PhabricatorModularTransactionType: fix regression
Summary:
Fix a regression in this specific point:
phutil_nonempty_string(integer) called at [<phorge>/src/applications/transactions/storage/PhabricatorModularTransactionType.php:342]
This regression was causing a broken Almanac page and maybe others.
Note: The function phutil_nonempty_string() is well-known to be very angry and
throws for any alien value. This is by design, and in many cases
this is appropriate. But not here.
The business logic here handles very generic types like integers
and really probably whatever scalar value coming from an user input
and then normalized to something else, not necessarily a string, but definitely
something that can be cast to string.
If you have better ideas about how to handle these cases, please join T15190.
Closes T15385
Test Plan:
To test Almanac:
- go to /almanac/network/ and create at least one network (example: "foo")
- go to /almanac/device/ and create at least one device (example: "bar")
- visit that Device
- Add Interface
- test the creation of an empty Interface
- test the creation of a right Interface (example: Network "foo", Address 127.0.0.1, Port 80)
- nothing esplodes anymore
Reviewers: arnold, O1 Blessed Committers, avivey
Reviewed By: arnold, O1 Blessed Committers, avivey
Subscribers: avivey, speck, tobiaswiese, Matthew, Cigaryno
Maniphest Tasks: T15385
Differential Revision: https://we.phorge.it/D25220