diff options
author | Mun Gwan-gyeong <elongbug@gmail.com> | 2013-05-28 00:04:26 +0900 |
---|---|---|
committer | Kristian Høgsberg <krh@bitplanet.net> | 2013-05-28 15:30:14 -0400 |
commit | 151a52834e4a0d5adb5e9f783f175ee369273820 (patch) | |
tree | d377e9b430509cb426f5cf37639100803c5ff8e1 /shared | |
parent | edddbd14acd98ba43081165524e93a6a0d2b3369 (diff) | |
download | weston-151a52834e4a0d5adb5e9f783f175ee369273820.tar.gz weston-151a52834e4a0d5adb5e9f783f175ee369273820.tar.bz2 weston-151a52834e4a0d5adb5e9f783f175ee369273820.zip |
config-parser: Avoid null dereference when handling config-parser ( when weston starts without config file. )
backtrace:
(gdb) bt
#0 weston_config_next_section (config=0x0, section=0xbfb2b608, name=0xbfb2b618) at config-parser.c:485
#1 0xb75b1371 in x11_compositor_create (config=0x1, argv=0xbfb2ba44, argc=<optimized out>, use_pixman=0, no_input=0, fullscreen=0, display=0xb75b55f9)
at compositor-x11.c:1582
#2 backend_init (display=0x8354490, argc=0xbfb2b9b0, argv=0xbfb2ba44, config=0x0) at compositor-x11.c:1674
#3 0x0804df7b in main (argc=1, argv=0xbfb2ba44) at compositor.c:3289
Diffstat (limited to 'shared')
-rw-r--r-- | shared/config-parser.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/shared/config-parser.c b/shared/config-parser.c index 7a19ea57..eec3e9e9 100644 --- a/shared/config-parser.c +++ b/shared/config-parser.c @@ -481,6 +481,9 @@ weston_config_next_section(struct weston_config *config, struct weston_config_section **section, const char **name) { + if (config == NULL) + return 0; + if (*section == NULL) *section = container_of(config->section_list.next, struct weston_config_section, link); |