diff --git a/daemon/escape.c b/daemon/escape.c index 1d4e0ccd..727ffdb9 100644 --- a/daemon/escape.c +++ b/daemon/escape.c @@ -50,6 +50,7 @@ void escape(const char ** src_ptr, char ** dst_ptr, unsigned int flags) { break; } + /* fall through intentionally, some compilers are parsing comments */ case '<': /* invalid attribute value char (XML spec) */ case '&': /* invalid attribute value char (XML spec) */ case '"': /* we store attribute values in double quotes - invalid attribute value char (XML spec) */ diff --git a/daemon/procfs.c b/daemon/procfs.c index 50e72f98..707f0e1f 100644 --- a/daemon/procfs.c +++ b/daemon/procfs.c @@ -39,6 +39,7 @@ #define BUFFER_SIZE 4096 static char g_buffer[BUFFER_SIZE]; +static char g_buffer_readlink[BUFFER_SIZE]; static bool @@ -152,11 +153,11 @@ procfs_get_process_link( return NULL; } - ret = readlink(g_buffer, g_buffer, sizeof(g_buffer)); + ret = readlink(g_buffer, g_buffer_readlink, sizeof(g_buffer_readlink)); if (ret != 0) { - g_buffer[ret] = 0; - buffer_ptr = strdup(g_buffer); + g_buffer_readlink[ret] = 0; + buffer_ptr = strdup(g_buffer_readlink); log_debug("process %llu %s symlink points to \"%s\"", pid, filename, buffer_ptr); } else diff --git a/wscript b/wscript index 729ae665..e26614ef 100644 --- a/wscript +++ b/wscript @@ -224,6 +224,9 @@ def configure(conf): if not conf.env['BUILD_PYLASH']: add_cflag(conf, '-Wextra') conf.env.append_unique('CXXFLAGS', '-Wno-unused-parameter') # the UNUSED() macro doesnt work for C++ + + add_cflag(conf, '-Wimplicit-fallthrough=2') + if conf.env['BUILD_WERROR']: add_cflag(conf, '-Werror') # for pre gcc-4.4, enable optimizations so use of uninitialized variables gets detected