Fixed infinite loop with dirname()

This commit is contained in:
Pierre Pronchery 2006-11-01 19:58:30 +00:00
parent 16af281e1c
commit cc4a9b1208

View File

@ -461,6 +461,8 @@ static void _refresh_path(Browser * browser)
for(i = 0; i < cnt; i++) for(i = 0; i < cnt; i++)
gtk_combo_box_remove_text(GTK_COMBO_BOX(browser->tb_path), 0); gtk_combo_box_remove_text(GTK_COMBO_BOX(browser->tb_path), 0);
p = dirname(browser->current->data); p = dirname(browser->current->data);
if(strcmp(p, ".") == 0)
return;
gtk_combo_box_append_text(GTK_COMBO_BOX(browser->tb_path), p); gtk_combo_box_append_text(GTK_COMBO_BOX(browser->tb_path), p);
for(cnt = 1; strcmp(p, "/") != 0; cnt++) for(cnt = 1; strcmp(p, "/") != 0; cnt++)
{ {
@ -471,9 +473,9 @@ static void _refresh_path(Browser * browser)
static void _refresh_loop(Browser * browser, char const * name) static void _refresh_loop(Browser * browser, char const * name)
{ {
GtkTreeIter iter;
gchar * path; gchar * path;
gchar * display_name; gchar * display_name;
GtkTreeIter iter;
char const * type = NULL; char const * type = NULL;
struct stat st; struct stat st;
gboolean is_dir; gboolean is_dir;