diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2017-03-21 08:21:49 +0100 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2017-03-21 08:21:49 +0100 |
| commit | 937d8a83610ac4a642d52412e94bebda3ed6b138 (patch) | |
| tree | 7c417ba8b24b8b3d00c635af1cc67626144cb937 | |
| parent | 000cbb0c810ad213fa70310d81fdc9afcb9643ee (diff) | |
| download | vis-937d8a83610ac4a642d52412e94bebda3ed6b138.tar.gz vis-937d8a83610ac4a642d52412e94bebda3ed6b138.tar.xz | |
vis: reject invalid option names
This should fix the ressource leak as found by CID 142510.
| -rw-r--r-- | vis-cmds.c | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -78,6 +78,10 @@ static void option_free(OptionDef *opt) { bool vis_option_register(Vis *vis, const char *names[], enum VisOption flags, VisOptionFunction *func, void *context, const char *help) { + + if (!names || !names[0]) + return false; + for (const char **name = names; *name; name++) { if (map_get(vis->options, *name)) return false; |
