Uploaded image for project: 'Axis2-C'
  1. Axis2-C
  2. AXIS2C-1306

Duplicate function in generated axis2_stubs.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 1.6.0
    • code generation
    • None
    • All

    Description

      In the main trunk, the C-code generator now generates the following function in the axis2_stub_xxx.c:

      axiom_node_t* AXIS2_CALL
      axis2_deserialize_buffer (
      const axutil_env_t * env,
      char *buffer);

      This one is the same for every stub generated. So if you use more SOAP interfaces in one project, you get this function multiple times in one project. The linker does not like that...

      Possible solutions include:

      • Make it static, so the linker won't complain. Drawback: You will end up with multiple copies of the same function. (Intelligent linkers might remove these duplicates when optimizing.)
      • Deliver it in a separate file outside of the generation process and tell the user to include it in their project. Drawback: Less user-friendly.
      • Generate it in a separate file and tell the user to delete duplicates. Drawback: less user-friendly.

      Dimuthu inputed:
      I think this function should be moved to axiom_node functions. To something like

      axiom_node_t *axiom_node_create_from_buffer(const axutil_env_t *env, axis2_char_t *buffer)

      It will be very easy to work with in other applications also.

      Attachments

        Activity

          People

            dimuthu Dimuthu Gamage
            pvbeem Patrick van Beem
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 8m
                8m
                Remaining:
                Remaining Estimate - 8m
                8m
                Logged:
                Time Spent - Not Specified
                Not Specified