MDL-58050 message: Commit the transaction before the early return
commitbb2924d018b810ba86b8f72ac708358686a14742
authorDavid Mudrák <david@moodle.com>
Wed, 22 Feb 2017 12:45:16 +0000 (22 13:45 +0100)
committerDavid Mudrák <david@moodle.com>
Wed, 22 Feb 2017 12:56:02 +0000 (22 13:56 +0100)
treea76bdd4b9bffa9475f8a51be7da82b75e78de78c
parent0c44da7887c51ff4ae9eec5196075e10f33bfaa5
MDL-58050 message: Commit the transaction before the early return

If there was no conversation found and the method returned early, the
active transaction was not marked as committable and the error was
reported by the request shutdown handler.

Attaching a unit test for the case just because it did not seem to be
covered. I was trying to reproduce the thrown error in the unit test but
it can't be used in this case. The shutdown handler puts the warning
directly into the error_log and it is not guaranteed where such messages
go (depending on the PHP configuration). And we do not even raise it
during the unit test execution (presumably due to noise it would
produce) anyway.
message/classes/api.php
message/tests/api_test.php