getControllerArguments() appears to allow for the 'source' of a resource argument to not be set:

    // Map source data to arguments.
    $arguments = array();
    if (isset($controller['args'])) {
      foreach ($controller['args'] as $i => $info) {
        // Fill in argument from source
        if (isset($info['source'])) {

However, checkNumberOfArguments() does not:

    if (isset($resource_operation['args'])) {
      foreach ($resource_operation['args'] as $argument) {
        if (is_array($argument['source']) && isset($argument['source']['path'])) {

Comments

joachim’s picture

joachim’s picture

Status: Active » Needs review
StatusFileSize
new671 bytes

Status: Needs review » Needs work

The last submitted patch, 1931080.services.checkNumberOfArguments-source-isset.patch, failed testing.

joachim’s picture

Argh, this breaks things!

joachim’s picture

Status: Needs work » Needs review
StatusFileSize
new675 bytes

That'll teach me to frankencode!!!

marcingy’s picture

Status: Needs review » Reviewed & tested by the community

Looks good thanks :)

kylebrowning’s picture

Status: Reviewed & tested by the community » Fixed

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.