Browse Source

Merge branch 'mc-4.6'

* mc-4.6:
  src/file.c: move_dir_dir():
  fileopctx.h: set definitely values for FileProgressStatus enum type.
  src/file.c: modified error messages fro warn_same_file() function.
  non-relevant comment removed
  little fix for show message
  Denis Vlasenko posted a patch which would fix issue when no dialog for break operation. Trouble: recently i accidentally entered '.' instead of '..' in the file copy dialog on a relatively big tree ... for every file in the tree i got the <foo> and <bar> are the same file message box, without any way to escape except killing mc from the outside. Rework warn_same_file for more usage glib. ... msg = g_strdup_printf() ...
  po/sk.po: translation update by Ivan Masár <helix84@centrum.sk>
  mountlist: use fsblkcnt_t when available (fixes #179)
  Fixed menu painting for NCurses screen library.
  Backport: syntax/spec.syntax: .spec syntax update by adamw (#189)
  lib/mc.ext.in: command line options fix by adamw (#183)

Conflicts:
	ChangeLog
	po/az.po
	po/be.po
	po/bg.po
	po/ca.po
	po/cs.po
	po/da.po
	po/de.po
	po/el.po
	po/es.po
	po/eu.po
	po/fi.po
	po/fr.po
	po/hu.po
	po/it.po
	po/ja.po
	po/ko.po
	po/lt.po
	po/lv.po
	po/mn.po
	po/nl.po
	po/no.po
	po/pl.po
	po/pt.po
	po/pt_BR.po
	po/ro.po
	po/ru.po
	po/sk.po
	po/sl.po
	po/sr.po
	po/sv.po
	po/ta.po
	po/tr.po
	po/uk.po
	po/vi.po
	po/wa.po
	po/zh_CN.po
	po/zh_TW.po
	src/file.c
Sergei Trofimovich 16 years ago
parent
commit
5eb39e7d9a
2 changed files with 16 additions and 8 deletions
  1. 8 0
      ChangeLog
  2. 8 8
      src/mountlist.c

+ 8 - 0
ChangeLog

@@ -67,6 +67,10 @@
 
 	* lib/mc.ext.in: command line options fix by adamw (#183)
 
+2009-02-03 Enrico Weigelt, metux ITS <weigelt@metux.de>
+
+	* lib/mc.ext.in: command line options fix by adamw (#183)
+
 2009-02-03 Enrico Weigelt, metux ITS <weigelt@metux.de>
 
 	* lib/mc.lib: added patch on #219 by angel_il
@@ -74,6 +78,10 @@
 	* vfs/extfs/u7z: patch from mandriva (#194)
 	* added Andrew Borodin's patch for showing free space (#188)
 
+2009-02-03 Enrico Weigelt, metux ITS <weigelt@metux.de>
+
+	* src/mountlist.c: fixed #179 (invalid block scale routine, problems with 32bit overflow)
+
 2009-02-02 Enrico Weigelt, metux ITS <weigelt@metux.de>
 
 	* vfs/extfs/iso9660.in: added iso9660 fix by cppgx (#86)

+ 8 - 8
src/mountlist.c

@@ -135,11 +135,11 @@ struct mount_entry
 
 struct fs_usage
 {
-  long fsu_blocks;		/* Total blocks. */
-  long fsu_bfree;		/* Free blocks available to superuser. */
-  long fsu_bavail;		/* Free blocks available to non-superuser. */
-  long fsu_files;		/* Total file nodes. */
-  long fsu_ffree;		/* Free file nodes. */
+    fsblkcnt_t fsu_blocks;	/* Total blocks. */
+    fsblkcnt_t fsu_bfree;	/* Free blocks available to superuser. */
+    fsblkcnt_t fsu_bavail;	/* Free blocks available to non-superuser. */
+    fsfilcnt_t fsu_files;	/* Total file nodes. */
+    fsfilcnt_t fsu_ffree;	/* Free file nodes. */
 };
 
 static int get_fs_usage (char *path, struct fs_usage *fsp);
@@ -775,8 +775,8 @@ my_statfs (struct my_statfs *myfs_stats, const char *path)
    BLOCKS FROMSIZE-byte blocks, rounding away from zero.
    TOSIZE must be positive.  Return -1 if FROMSIZE is not positive.  */
 
-static long
-fs_adjust_blocks (long blocks, int fromsize, int tosize)
+static fsblkcnt_t
+fs_adjust_blocks (fsblkcnt_t blocks, int fromsize, int tosize)
 {
     if (tosize <= 0)
 	abort ();
@@ -788,7 +788,7 @@ fs_adjust_blocks (long blocks, int fromsize, int tosize)
     else if (fromsize > tosize)	/* E.g., from 2048 to 512.  */
 	return blocks * (fromsize / tosize);
     else			/* E.g., from 256 to 512.  */
-	return (blocks + (blocks < 0 ? -1 : 1)) / (tosize / fromsize);
+	return blocks / (tosize / fromsize);
 }
 
 #if defined(_AIX) && defined(_I386)