Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Code in wait function continues to possibly return RMW_RET_OK despite DDS return error #263

@dejanpan

Description

@dejanpan

Bug report

Required Info:

  • Operating System:

    • Ubuntu 16.04
  • Installation type:

(
RMW_SET_ERROR_MSG("Failed to get detach condition from waitset");
)

(
RMW_SET_ERROR_MSG("Failed to get detach condition from waitset");
)

(
RMW_SET_ERROR_MSG("Failed to get detach condition from waitset");
)

(

RMW_SET_ERROR_MSG("Failed to get detach condition from waitset");
)

  • Version or commit hash:
    • see above
  • DDS implementation:
    • RTI Connext
  • Client library (if applicable):
    • NA

Steps to reproduce issue

Quoting @dirk-thomas

After setting the error message the function should return `RMW_RET_ERROR`. The quick fix would be to just add the return statement in the cases it is missing.

The "correct" fix would be to update the structure of the code to store the return value in a value but still perform the other cleanup and only at the very end `return`.

I will provide PR for the quick fix and started an issue for the correct fix.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions