Mercurial > gftp.yaz
diff src/gtk/misc-gtk.c @ 499:39e9945288ea
2004-7-13 Brian Masney <masneyb@gftp.org>
* lib/gftp.h lib/local.c lib/misc.c lib/protocols.c lib/rfc2068.c
lib/rfc959.c lib/sshv2.c src/gtk/chmod_dialog.c src/gtk/delete_dialog.c
src/gtk/dnd.c src/gtk/gftp-gtk.c src/gtk/gtkui_transfer.c
src/gtk/menu-items.c src/gtk/misc-gtk.c src/gtk/view_dialog.c
src/text/textui.c src/uicommon/gftpui.c src/uicommon/gftpuicallbacks.c -
represent the file attributes as a mode_t variable instead of a
character string
author | masneyb |
---|---|
date | Tue, 13 Jul 2004 20:17:42 +0000 |
parents | 4376ffeab64e |
children | ba50a7085d93 |
line wrap: on
line diff
--- a/src/gtk/misc-gtk.c Tue Jul 13 02:44:35 2004 +0000 +++ b/src/gtk/misc-gtk.c Tue Jul 13 20:17:42 2004 +0000 @@ -646,15 +646,15 @@ void add_file_listbox (gftp_window_data * wdata, gftp_file * fle) { - char *add_data[7] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL }, *pos; + char *add_data[7] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL }; + char *tempstr, *str, *pos, *attribs; gftp_config_list_vars * tmplistvar; - int clist_num; + gftp_file_extensions * tempext; intptr_t show_hidden_files; - gftp_file_extensions * tempext; - char *tempstr, *str; GdkBitmap * bitmap; GList * templist; GdkPixmap * pix; + int clist_num; size_t stlen; gftp_lookup_request_option (wdata->request, "show_hidden_files", @@ -689,13 +689,15 @@ bitmap = NULL; if (strcmp (fle->file, "..") == 0) gftp_get_pixmap (wdata->listbox, "dotdot.xpm", &pix, &bitmap); - else if (fle->islink && fle->isdir) + else if (S_ISLNK (fle->st_mode) && S_ISDIR (fle->st_mode)) gftp_get_pixmap (wdata->listbox, "linkdir.xpm", &pix, &bitmap); - else if (fle->islink) + else if (S_ISLNK (fle->st_mode)) gftp_get_pixmap (wdata->listbox, "linkfile.xpm", &pix, &bitmap); - else if (fle->isdir) + else if (S_ISLNK (fle->st_mode)) gftp_get_pixmap (wdata->listbox, "dir.xpm", &pix, &bitmap); - else if (fle->isexe) + else if ((fle->st_mode & S_IXUSR) || + (fle->st_mode & S_IXGRP) || + (fle->st_mode & S_IXOTH)) gftp_get_pixmap (wdata->listbox, "exe.xpm", &pix, &bitmap); else { @@ -727,7 +729,7 @@ else if (fle->file) gtk_clist_set_text (GTK_CLIST (wdata->listbox), clist_num, 1, fle->file); - if (fle->attribs && (*fle->attribs == 'b' || *fle->attribs == 'c')) + if (GFTP_IS_SPECIAL_DEVICE (fle->st_mode)) tempstr = g_strdup_printf ("%d, %d", major (fle->size), minor (fle->size)); else @@ -746,8 +748,10 @@ *pos = '\0'; gtk_clist_set_text (GTK_CLIST (wdata->listbox), clist_num, 5, str); } - if (fle->attribs) - gtk_clist_set_text (GTK_CLIST (wdata->listbox), clist_num, 6, fle->attribs); + + attribs = gftp_convert_attributes_from_mode_t (fle->st_mode); + gtk_clist_set_text (GTK_CLIST (wdata->listbox), clist_num, 6, attribs); + g_free (attribs); }