rpms/mc/devel mc-showfree.patch,1.1,1.2
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Thu Dec 29 19:32:21 UTC 2005
- Previous message (by thread): rpms/libsetrans/devel .cvsignore, 1.12, 1.13 libsetrans.spec, 1.20, 1.21 sources, 1.16, 1.17
- Next message (by thread): rpms/ethereal/FC-4 .cvsignore, 1.24, 1.25 ethereal.spec, 1.40, 1.41 sources, 1.27, 1.28 ethereal-0.10.0a-ia64-segfault.patch, 1.1, NONE ethereal-0.10.12-cleanup.patch, 1.1, NONE ethereal-0.10.6-old.patch, 1.1, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: jnovy
Update of /cvs/dist/rpms/mc/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv27310
Modified Files:
mc-showfree.patch
Log Message:
* Wed Dec 28 2005 Jindrich Novy <jnovy at redhat.com> 4.6.1a-6
- display free space on a device assigned to current directory in
main panels
- correctly diplay characters in mcview for non-UTF-8 LANG set (#174004)
thanks to Dmitry Butskoy
mc-showfree.patch:
screen.c | 45 +++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 45 insertions(+)
Index: mc-showfree.patch
===================================================================
RCS file: /cvs/dist/rpms/mc/devel/mc-showfree.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- mc-showfree.patch 28 Dec 2005 14:21:04 -0000 1.1
+++ mc-showfree.patch 29 Dec 2005 19:32:05 -0000 1.2
@@ -1,5 +1,5 @@
---- mc-4.6.1a/src/screen.c.showfree 2005-12-27 10:45:05.000000000 +0100
-+++ mc-4.6.1a/src/screen.c 2005-12-27 12:52:58.000000000 +0100
+--- mc-4.6.1a/src/screen.c.showfree 2005-12-28 16:49:52.000000000 +0100
++++ mc-4.6.1a/src/screen.c 2005-12-28 17:14:45.000000000 +0100
@@ -49,6 +49,7 @@
#define WANT_WIDGETS
#include "main.h" /* the_menubar */
@@ -8,52 +8,70 @@
#define ELEMENTS(arr) ( sizeof(arr) / sizeof((arr)[0]) )
-@@ -851,6 +852,9 @@ paint_dir (WPanel *panel)
+@@ -106,6 +107,12 @@ int filetype_mode = 1;
+ /* The hook list for the select file function */
+ Hook *select_file_hook = 0;
+
++/* Old current working directory for displaying free space */
++char *old_cwd = NULL;
++
++/* Used to figure out how many free space we have */
++struct my_statfs myfs_stats;
++
+ static cb_ret_t panel_callback (Widget *, widget_msg_t msg, int parm);
+ static int panel_event (Gpm_Event *event, void *);
+ static void paint_frame (WPanel *panel);
+@@ -851,6 +858,41 @@ paint_dir (WPanel *panel)
standend ();
}
-+static int initialized;
-+static struct my_statfs myfs_stats;
++
++static void
++show_free_space(WPanel *panel)
++{
++ struct stat st;
++
++ /* Don't try to stat non-local fs */
++ if (strlen(panel->cwd) >= 2 && panel->cwd[0] == '/' && panel->cwd[1] == '#')
++ return;
++
++ if (old_cwd == NULL || strcmp(old_cwd, panel->cwd)) {
++ init_my_statfs();
++ if (old_cwd != NULL) g_free(old_cwd);
++ old_cwd = g_strdup(panel->cwd);
++ }
++
++ my_statfs (&myfs_stats, panel->cwd);
++ st = panel->dir.list [panel->selected].st;
++
++ if (myfs_stats.avail > 0 || myfs_stats.total > 0) {
++ char buffer1 [6], buffer2[6], *tmp;
++ size_trunc_len (buffer1, 5, myfs_stats.avail, 1);
++ size_trunc_len (buffer2, 5, myfs_stats.total, 1);
++ tmp = g_strdup_printf (_("%s (%d%%) of %s"), buffer1, myfs_stats.total ?
++ (int)(100 * (double)myfs_stats.avail / myfs_stats.total) : 0,
++ buffer2);
++ widget_move (&panel->widget, panel->widget.lines-3, panel->widget.cols-2-strlen(tmp));
++ if (panel->active)
++ attrset (REVERSE_COLOR);
++ addstr (tmp);
++ attrset (NORMAL_COLOR);
++ g_free (tmp);
++ }
++}
+
static void
mini_info_separator (WPanel *panel)
{
-@@ -866,6 +870,34 @@ mini_info_separator (WPanel *panel)
+@@ -866,6 +908,7 @@ mini_info_separator (WPanel *panel)
hline ((slow_terminal ? '-' : ACS_HLINE) | NORMAL_COLOR,
panel->widget.cols - 2);
#endif /* !HAVE_SLANG */
-+
-+
-+ {
-+ struct stat st;
-+
-+ if (!initialized) {
-+ initialized = 1;
-+ init_my_statfs();
-+ }
-+
-+ my_statfs (&myfs_stats, current_panel->cwd);
-+ st = current_panel->dir.list [current_panel->selected].st;
-+
-+ if (myfs_stats.avail > 0 || myfs_stats.total > 0) {
-+ char buffer1 [6], buffer2[6], *tmp;
-+ size_trunc_len (buffer1, 5, myfs_stats.avail, 1);
-+ size_trunc_len (buffer2, 5, myfs_stats.total, 1);
-+ tmp = g_strdup_printf (_("%s (%d%%) of %s"), buffer1, myfs_stats.total ?
-+ (int)(100 * (double)myfs_stats.avail / myfs_stats.total) : 0,
-+ buffer2);
-+ widget_move (&panel->widget, panel->widget.lines-3, panel->widget.cols-2-strlen(tmp));
-+ if (panel->active)
-+ attrset (REVERSE_COLOR);
-+ addstr (tmp);
-+ attrset (NORMAL_COLOR);
-+ g_free (tmp);
-+ }
-+ }
++ show_free_space (panel);
}
static void
-@@ -929,6 +961,8 @@ show_dir (WPanel *panel)
+@@ -929,6 +972,8 @@ show_dir (WPanel *panel)
widget_move (&panel->widget, 0, panel->widget.cols - 3);
addstr ("v");
- Previous message (by thread): rpms/libsetrans/devel .cvsignore, 1.12, 1.13 libsetrans.spec, 1.20, 1.21 sources, 1.16, 1.17
- Next message (by thread): rpms/ethereal/FC-4 .cvsignore, 1.24, 1.25 ethereal.spec, 1.40, 1.41 sources, 1.27, 1.28 ethereal-0.10.0a-ia64-segfault.patch, 1.1, NONE ethereal-0.10.12-cleanup.patch, 1.1, NONE ethereal-0.10.6-old.patch, 1.1, NONE
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-cvs-commits
mailing list