diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/Fl_Native_File_Chooser_Kdialog.cxx | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/Fl_Native_File_Chooser_Kdialog.cxx b/src/Fl_Native_File_Chooser_Kdialog.cxx index db17d15ed..6fc27f1ec 100644 --- a/src/Fl_Native_File_Chooser_Kdialog.cxx +++ b/src/Fl_Native_File_Chooser_Kdialog.cxx @@ -208,6 +208,7 @@ char *Fl_Kdialog_Native_File_Chooser_Driver::parse_filter(const char *f) { char *lead = new char[r-p]; memcpy(lead, p+1, (r-p)-1); lead[(r-p)-1] = 0; const char *r2 = strchr(r, '}'); + if (!r2) return NULL; char *ends = new char[r2-r]; memcpy(ends, r+1, (r2-r)-1); ends[(r2-r)-1] = 0; char *ptr; @@ -248,6 +249,7 @@ void Fl_Kdialog_Native_File_Chooser_Driver::filter(const char *f) { char *part = strtok_r(f2, "\n", &ptr); while (part) { char *p = parse_filter(part); + if (!p) break; _parsedfilt = strapp(_parsedfilt, p); _parsedfilt = strapp(_parsedfilt, "\n"); delete[] p; |
