$NetBSD: patch-ac,v 1.9 2010/11/09 13:13:03 adam Exp $ --- oggenc/oggenc.c.orig 2010-03-26 07:07:07.000000000 +0000 +++ oggenc/oggenc.c @@ -779,6 +779,8 @@ static void parse_options(int argc, char break; case 'a': + if (strlen(optarg) == 0) + break; opt->artist = realloc(opt->artist, (++opt->artist_count)*sizeof(char *)); opt->artist[opt->artist_count - 1] = strdup(optarg); break; @@ -791,10 +793,14 @@ static void parse_options(int argc, char opt->comments[opt->comment_count - 1] = strdup(optarg); break; case 'd': + if (strlen(optarg) == 0) + break; opt->dates = realloc(opt->dates, (++opt->date_count)*sizeof(char *)); opt->dates[opt->date_count - 1] = strdup(optarg); break; case 'G': + if (strlen(optarg) == 0) + break; opt->genre = realloc(opt->genre, (++opt->genre_count)*sizeof(char *)); opt->genre[opt->genre_count - 1] = strdup(optarg); break; @@ -803,6 +809,8 @@ static void parse_options(int argc, char exit(0); break; case 'l': + if (strlen(optarg) == 0) + break; opt->album = realloc(opt->album, (++opt->album_count)*sizeof(char *)); opt->album[opt->album_count - 1] = strdup(optarg); break; @@ -815,6 +823,8 @@ static void parse_options(int argc, char opt->fixedserial = 1; break; case 't': + if (strlen(optarg) == 0) + break; opt->title = realloc(opt->title, (++opt->title_count)*sizeof(char *)); opt->title[opt->title_count - 1] = strdup(optarg); break;