add: if (size == 0) { g_free (contents); return TRUE; }
context: totem_pl_parser_add_pls (TotemPlParser *parser, const char *url, gpointer data){	gboolean retval = FALSE;	char *contents, **lines;	int size, i, num_entries;	char *split_char;	gboolean dos_mode = FALSE;	if (my_eel_read_entire_file (url, &size, &contents) != GNOME_VFS_OK)		return FALSE;	contents = g_realloc (contents, size + 1);	contents[size] = '\0';	/* figure out whether we're a unix pls or dos pls */	if (strstr(contents,"\x0d") == NULL)		split_char = "\n";	else {		split_char = "\x0d\n";		dos_mode = TRUE;	}	lines = g_strsplit (contents, split_char, 0);	g_free (contents);	/* [parser] */	if (g_ascii_strncasecmp (lines[0], "[playlist]",				(gsize)strlen ("[playlist]")) != 0)		goto bail;	/* numberofentries=? */	num_entries = read_ini_line_int (lines, "numberofentries");	if (num_entries == -1)		goto bail;	retval = TRUE;	for (i = 1; i <= num_entries; i++) {		char *file, *title, *genre;		char *file_key, *title_key, *genre_key;		file_key = g_strdup_printf ("file%d", i);		title_key = g_strdup_printf ("title%d", i);		/* Genre is our own little extension */		genre_key = g_strdup_printf ("genre%d", i);		file = read_ini_line_string (lines, (const char*)file_key, dos_mode);		title = read_ini_line_string (lines, (const char*)title_key, dos_mode);		genre = read_ini_line_string (lines, (const char*)genre_key, dos_mode);		g_free (file_key);		g_free (title_key);		g_free (genre_key);		if (file != NULL)			totem_pl_parser_add_one_url_ext (parser,					file, title, genre);		g_free (file);		g_free (title);		g_free (genre);	}bail:	g_strfreev (lines);	return retval;}