[asterisk-commits] mjordan: branch 11 r433743 - /branches/11/main/stdtime/localtime.c
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Sun Mar 29 21:28:49 CDT 2015
Author: mjordan
Date: Sun Mar 29 21:28:47 2015
New Revision: 433743
URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=433743
Log:
main/stdtime/localtime: Fix warning introduced in r433720
The patch in r433720 caused a warning to be kicked back by gcc. It occurred
due to this check in unistd.h:
if (__nbytes > __bos0 (__buf))
return __read_chk_warn (__fd, __buf, __nbytes, __bos0 (__buf));
That is, if __nbytes is greater than the result of GCC's built-in object size
for the struct, we'll kick back a warning.
As it turns out, this is because there is an error in the code in the patch.
We are passing the address of the pointer to the struct, not iev, which is a
pointer to the struct. Hence, the number of bytes is probably going to be lot
larger than the number of bytes that make up a pointer! This patch changes
the code just read from the pointer to the struct - which fixes the warning.
ASTERISK-24917
Modified:
branches/11/main/stdtime/localtime.c
Modified: branches/11/main/stdtime/localtime.c
URL: http://svnview.digium.com/svn/asterisk/branches/11/main/stdtime/localtime.c?view=diff&rev=433743&r1=433742&r2=433743
==============================================================================
--- branches/11/main/stdtime/localtime.c (original)
+++ branches/11/main/stdtime/localtime.c Sun Mar 29 21:28:47 2015
@@ -377,7 +377,7 @@
for (;/*ever*/;) {
/* This read should block, most of the time. */
- if ((res = read(inotify_fd, &iev, real_sizeof_iev)) < sizeof(*iev) && res > 0) {
+ if ((res = read(inotify_fd, iev, real_sizeof_iev)) < sizeof(*iev) && res > 0) {
/* This should never happen */
ast_log(LOG_ERROR, "Inotify read less than a full event (%zd < %zu)?!!\n", res, sizeof(*iev));
break;
More information about the asterisk-commits
mailing list