linux/scripts/kconfig
Arnaud Lacombe 37ae2d5998 kbuild: Fix compiler warning with assertion when calling 'fwrite'
Reinhard Tartler discovered a corner case of calling xfwrite() where the
length of the string is zero.

Arnaud Lacombe suggested to use assertion for the corner case, as
fwrite(3) is currently used:

 1) in comment printers. Empty comment are not allowed.
 2) in a callback passed to expr_print(), where the string printed is
    either NULL OR non-empty.
 3) in the lexer, auto-generated, and unused.

I feel using assertion is a good solution:

 1) It cleanly takes care of the above-mentioned corner case.
 2) It can be easily disabled by defining NDEBUG.
 3) It asserts xfwrite() is simply a wrapper for fwrite().

Reported-by: Reinhard Tartler <Reinhard.Tartler@informatik.uni-erlangen.de>
Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
Signed-off-by: Jean Sacren <sakiwit@gmail.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
2012-01-15 00:17:18 +01:00
..
lxdialog kconfig: fix set but not used variables 2011-08-29 20:22:26 -04:00
.gitignore kconfig: migrate parser to implicit rules 2011-06-09 14:04:44 -04:00
check.sh
conf.c kconfig/conf: mark xfgets() private 2011-07-02 01:04:40 -04:00
confdata.c kconfig: use xfwrite wrapper function to silence warnings 2011-12-18 21:54:12 +01:00
expr.c kconfig: use calloc() for expr allocation 2011-07-02 01:04:37 -04:00
expr.h kbuild: Fix compiler warning with assertion when calling 'fwrite' 2012-01-15 00:17:18 +01:00
gconf.c kconfig: fix set but not used warnings 2011-12-11 21:29:45 +01:00
gconf.glade
images.c
kxgettext.c kconfig: nuke LKC_DIRECT_LINK cruft 2011-06-06 15:32:20 -04:00
lkc_proto.h kconfig: introduce specialized printer 2011-07-01 16:23:27 +02:00
lkc.h kbuild: Fix compiler warning with assertion when calling 'fwrite' 2012-01-15 00:17:18 +01:00
Makefile Improve update-po-config output 2012-01-15 00:13:53 +01:00
mconf.c menuconfig: let make not report error when not save configuration 2012-01-14 21:54:32 +01:00
menu.c kconfig: factor code in menu_get_ext_help() 2011-08-08 16:02:03 +02:00
merge_config.sh merge_config.sh: fix bug in final check 2012-01-14 21:44:29 +01:00
nconf.c scripts/kconfig/nconf: dynamically alloc dialog_input_result 2011-09-09 14:40:08 +02:00
nconf.gui.c scripts/kconfig/nconf: add KEY_HOME / KEY_END for dialog_inputbox 2011-09-09 14:40:08 +02:00
nconf.h scripts/kconfig/nconf: dynamically alloc dialog_input_result 2011-09-09 14:40:08 +02:00
POTFILES.in
qconf.cc xconfig: Abort close if configuration cannot be saved 2011-07-25 15:50:34 +02:00
qconf.h xconfig: Abort close if configuration cannot be saved 2011-07-25 15:50:34 +02:00
streamline_config.pl kconfig/streamline_config.pl: use options to determine operating mode 2011-08-08 01:44:26 -04:00
symbol.c kconfig: introduce specialized printer 2011-07-01 16:23:27 +02:00
util.c kconfig: add missing <stdlib.h> inclusion 2011-06-06 15:32:16 -04:00
zconf.gperf kconfig: constify `kconf_id_lookup' 2011-06-09 14:04:42 -04:00
zconf.hash.c_shipped kconfig: regen parser 2011-06-09 14:04:45 -04:00
zconf.l Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-07-30 00:17:06 -07:00
zconf.lex.c_shipped Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-07-30 00:17:06 -07:00
zconf.tab.c_shipped Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-07-30 00:17:06 -07:00
zconf.y Merge branch 'kconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild-2.6 2011-07-30 00:17:06 -07:00