Dangerous macros defs in axutil_unix.h and axutil_windows.h
-----------------------------------------------------------

                 Key: AXIS2C-1467
                 URL: https://issues.apache.org/jira/browse/AXIS2C-1467
             Project: Axis2-C
          Issue Type: Improvement
    Affects Versions: 1.6.0, Current (Nightly)
            Reporter: Olivier Mengué


Same macros in axutil_unix.h have dangerous definitions:
- ';' at the end of a definition that is defined like a function
- multiple statement without enclosing block
Those mistakes can be dangerous when the macro is called in the "then" part of 
an "if" statement.

Examples:
#define AXIS2_CLOSE_SOCKET_ON_EXIT(sock)    fcntl(sock,F_SETFD, FD_CLOEXEC);
#define AXIS2_UNZOPEN2(zipfilename,ffunc) unzOpen2(zipfilename,NULL); 
memset(&ffunc, 0, sizeof(ffunc));

The first error is fixed by removing the ';'. The second one by enclosing the 
definition in "do { ... } while (0)".

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to