osaf/services/saf/logsv/lgs/lgs_stream.cc | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
Initialize the errno_save output parameters in all code paths in the function
fileclose_h(), to fix the following compilation error discovered when using GCC
6:
In file included from ../../../../../osaf/libs/core/include/ncs_osprm.h:32:0,
from ../../../../../osaf/libs/core/include/ncs_ubaid.h:45,
from ../../../../../osaf/libs/core/include/mbcsv_papi.h:29,
from lgs.h:30,
from lgs_stream.cc:29:
../../../../../osaf/libs/core/common/include/logtrace.h: In function 'int
log_stream_file_close(log_stream_t*)':
../../../../../osaf/libs/core/common/include/logtrace.h:131:46: error:
'errno_ret' may be used uninitialized in this function
[-Werror=maybe-uninitialized]
#define LOG_NO(format, args...) _logtrace_log(__FILE__, __LINE__, LOG_NOTICE,
(format), ##args)
^
lgs_stream.cc:978:6: note: 'errno_ret' was declared here
int errno_ret;
^~~~~~~~~
diff --git a/osaf/services/saf/logsv/lgs/lgs_stream.cc
b/osaf/services/saf/logsv/lgs/lgs_stream.cc
--- a/osaf/services/saf/logsv/lgs/lgs_stream.cc
+++ b/osaf/services/saf/logsv/lgs/lgs_stream.cc
@@ -142,6 +142,7 @@ static int fileclose_h(int fd, int *errn
*errno_save = errno;
} else {
rc = apipar.hdl_ret_code_out;
+ *errno_save = 0;
}
TRACE_LEAVE2("rc = %d",rc);
------------------------------------------------------------------------------
_______________________________________________
Opensaf-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-devel