mirror of
https://github.com/MidnightCommander/mc
synced 2024-12-22 12:32:40 +03:00
Merge branch '3915_cleanup'
* 3915_cleanup: (24 commits) Update po/*.po files. src/filemanager/panelize.c: fix coding style. Sync with gnulib 844f63f9576ebb74fde62e5017bf838c69db22c4. Sync with gnulib 1ff0e9684bb83a8277ffe22ac125ce7e90f6702b. Sync with gnulib e96dcbcbc5142bd04c6c2e9e4595d9bea910fb3b. Sync with gnulib 23671eec22f5221a2dff50942f24c41bcf9caeaf. Sync with gnulib 8ae091f7c8cd35cc7dff82c544d04da6fd095e11. Sync with gnulib 4d4877e6c2123c4862c321f3eab28a55bf886216. Sync with gnulib cbc85bb67fc628349e0351b835efc9e91cd0482f. Sync with gnulib be9e66b37c948df517ee905b4a9689a50946409c. (make_symlink): rename variable. (do_move_dir_dir): rename variables. (copy_dir_dir): rename variables. misc/syntax/Syntax.in: simplify regex for PO and CUDA syntaxes. misc/syntax/Syntax.in: fix regex for Meson syntax. dir_list: fix memory leak when list is free'd. Sync with gnulib f7a6286e04209da1bc7b1820002b6a5c32638369. Sync with gnulib d1327df1f1c9bae26571e6699800c8d1c4712afb. Sync with gnulib fa3e2ad20d10d648cc74a5d320ce531a80ff7b1f. Sync with gnulib 74c29c68bba3fe7c2f02eb3fc9f7ef196cec1bc6. ...
This commit is contained in:
commit
91a428db5c
2
doc/FAQ
2
doc/FAQ
@ -127,8 +127,6 @@ Frequently Asked Questions
|
|||||||
* sparc-linux-linux2.x
|
* sparc-linux-linux2.x
|
||||||
* sparc64-linux-linux2.1
|
* sparc64-linux-linux2.1
|
||||||
* mips-sgi-irix5.x, 6.x
|
* mips-sgi-irix5.x, 6.x
|
||||||
* mips-dec-ultrix4.3
|
|
||||||
* rs6000-ibm-aix3.2.5
|
|
||||||
* sparc-sun-sunos4.1
|
* sparc-sun-sunos4.1
|
||||||
* sparc-sun-solaris2.3, 2.4, 2.5
|
* sparc-sun-solaris2.3, 2.4, 2.5
|
||||||
* sparc-sun-netbsd1.0
|
* sparc-sun-netbsd1.0
|
||||||
|
@ -324,7 +324,6 @@ i386-*-linux
|
|||||||
sparc-*-linux
|
sparc-*-linux
|
||||||
alpha-*-linux
|
alpha-*-linux
|
||||||
powerpc-*-linux
|
powerpc-*-linux
|
||||||
mips-dec-ultrix4.3
|
|
||||||
mips-dec-{open,net}bsd1.0
|
mips-dec-{open,net}bsd1.0
|
||||||
mips-sgi-irix5.2
|
mips-sgi-irix5.2
|
||||||
mips-sgi-irix5.3
|
mips-sgi-irix5.3
|
||||||
|
@ -66,8 +66,7 @@
|
|||||||
st_blocks ((statbuf).st_size) : 0)
|
st_blocks ((statbuf).st_size) : 0)
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
/* Some systems, like Sequents, return st_blksize of 0 on pipes.
|
/* When running 'rsh hpux11-system cat any-file', cat would
|
||||||
Also, when running 'rsh hpux11-system cat any-file', cat would
|
|
||||||
determine that the output stream had an st_blksize of 2147421096.
|
determine that the output stream had an st_blksize of 2147421096.
|
||||||
Conversely st_blksize can be 2 GiB (or maybe even larger) with XFS
|
Conversely st_blksize can be 2 GiB (or maybe even larger) with XFS
|
||||||
on 64-bit hosts. Somewhat arbitrarily, limit the "optimal" block
|
on 64-bit hosts. Somewhat arbitrarily, limit the "optimal" block
|
||||||
@ -83,10 +82,6 @@
|
|||||||
This loses when mixing HP-UX and BSD file systems with NFS. */
|
This loses when mixing HP-UX and BSD file systems with NFS. */
|
||||||
#define ST_NBLOCKSIZE 1024
|
#define ST_NBLOCKSIZE 1024
|
||||||
#else /* !hpux */
|
#else /* !hpux */
|
||||||
#if defined _AIX && defined _I386
|
|
||||||
/* AIX PS/2 counts st_blocks in 4K units. */
|
|
||||||
#define ST_NBLOCKSIZE (4 * 1024)
|
|
||||||
#else
|
|
||||||
#if defined _CRAY
|
#if defined _CRAY
|
||||||
#define ST_NBLOCKS(statbuf) \
|
#define ST_NBLOCKS(statbuf) \
|
||||||
(S_ISREG ((statbuf).st_mode) || S_ISDIR ((statbuf).st_mode) \
|
(S_ISREG ((statbuf).st_mode) || S_ISDIR ((statbuf).st_mode) \
|
||||||
@ -94,7 +89,6 @@
|
|||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef ST_NBLOCKS
|
#ifndef ST_NBLOCKS
|
||||||
#define ST_NBLOCKS(statbuf) ((statbuf).st_blocks)
|
#define ST_NBLOCKS(statbuf) ((statbuf).st_blocks)
|
||||||
|
@ -11,15 +11,11 @@
|
|||||||
/*** typedefs(not structures) and defined constants **********************************************/
|
/*** typedefs(not structures) and defined constants **********************************************/
|
||||||
|
|
||||||
/* Taken from S-Lang's slutty.c */
|
/* Taken from S-Lang's slutty.c */
|
||||||
#ifdef ultrix /* Ultrix gets _POSIX_VDISABLE wrong! */
|
|
||||||
#define NULL_VALUE -1
|
|
||||||
#else
|
|
||||||
#ifdef _POSIX_VDISABLE
|
#ifdef _POSIX_VDISABLE
|
||||||
#define NULL_VALUE _POSIX_VDISABLE
|
#define NULL_VALUE _POSIX_VDISABLE
|
||||||
#else
|
#else
|
||||||
#define NULL_VALUE 255
|
#define NULL_VALUE 255
|
||||||
#endif
|
#endif
|
||||||
#endif
|
|
||||||
|
|
||||||
/*** enums ***************************************************************************************/
|
/*** enums ***************************************************************************************/
|
||||||
|
|
||||||
|
@ -19,10 +19,6 @@
|
|||||||
#include <sys/sysmacros.h>
|
#include <sys/sysmacros.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(_AIX)
|
|
||||||
#include <time.h> /* AIX for tm */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
/*** typedefs(not structures) and defined constants **********************************************/
|
/*** typedefs(not structures) and defined constants **********************************************/
|
||||||
|
@ -82,10 +82,6 @@ vfs_class *current_vfs = NULL;
|
|||||||
|
|
||||||
/*** file scope macro definitions ****************************************************************/
|
/*** file scope macro definitions ****************************************************************/
|
||||||
|
|
||||||
#if defined(_AIX) && !defined(NAME_MAX)
|
|
||||||
#define NAME_MAX FILENAME_MAX
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define VFS_FIRST_HANDLE 100
|
#define VFS_FIRST_HANDLE 100
|
||||||
|
|
||||||
/*** file scope type declarations ****************************************************************/
|
/*** file scope type declarations ****************************************************************/
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
# serial 32
|
# serial 34
|
||||||
# Obtaining file system usage information.
|
# Obtaining file system usage information.
|
||||||
|
|
||||||
# Copyright (C) 1997-1998, 2000-2001, 2003-2017 Free Software Foundation, Inc.
|
# Copyright (C) 1997-1998, 2000-2001, 2003-2017 Free Software Foundation, Inc.
|
||||||
@ -29,27 +29,30 @@ AC_DEFUN([gl_FSUSAGE],
|
|||||||
|
|
||||||
AC_DEFUN([gl_FILE_SYSTEM_USAGE],
|
AC_DEFUN([gl_FILE_SYSTEM_USAGE],
|
||||||
[
|
[
|
||||||
dnl Enable large-file support. This has the effect of changing the size
|
dnl Enable large-file support. This has the effect of changing the size
|
||||||
dnl of field f_blocks in 'struct statvfs' from 32 bit to 64 bit on
|
dnl of field f_blocks in 'struct statvfs' from 32 bit to 64 bit on
|
||||||
dnl glibc/Hurd, HP-UX 11, Solaris (32-bit mode). It also changes the size
|
dnl glibc/Hurd, HP-UX 11, Solaris (32-bit mode). It also changes the size
|
||||||
dnl of field f_blocks in 'struct statfs' from 32 bit to 64 bit on
|
dnl of field f_blocks in 'struct statfs' from 32 bit to 64 bit on
|
||||||
dnl Mac OS X >= 10.5 (32-bit mode).
|
dnl Mac OS X >= 10.5 (32-bit mode).
|
||||||
AC_REQUIRE([AC_SYS_LARGEFILE])
|
AC_REQUIRE([AC_SYS_LARGEFILE])
|
||||||
|
|
||||||
AC_MSG_CHECKING([how to get file system space usage])
|
AC_MSG_CHECKING([how to get file system space usage])
|
||||||
ac_fsusage_space=no
|
ac_fsusage_space=no
|
||||||
|
|
||||||
# Perform only the link test since it seems there are no variants of the
|
# Perform only the link test since it seems there are no variants of the
|
||||||
# statvfs function. This check is more than just AC_CHECK_FUNCS([statvfs])
|
# statvfs function. This check is more than just AC_CHECK_FUNCS([statvfs])
|
||||||
# because that got a false positive on SCO OSR5. Adding the declaration
|
# because that got a false positive on SCO OSR5. Adding the declaration
|
||||||
# of a 'struct statvfs' causes this test to fail (as it should) on such
|
# of a 'struct statvfs' causes this test to fail (as it should) on such
|
||||||
# systems. That system is reported to work fine with STAT_STATFS4 which
|
# systems. That system is reported to work fine with STAT_STATFS4 which
|
||||||
# is what it gets when this test fails.
|
# is what it gets when this test fails.
|
||||||
if test $ac_fsusage_space = no; then
|
if test $ac_fsusage_space = no; then
|
||||||
# glibc/{Hurd,kFreeBSD}, FreeBSD >= 5.0, NetBSD >= 3.0,
|
# glibc/{Hurd,kFreeBSD}, FreeBSD >= 5.0, NetBSD >= 3.0,
|
||||||
# OpenBSD >= 4.4, AIX, HP-UX, IRIX, Solaris, Cygwin, Interix, BeOS.
|
# OpenBSD >= 4.4, AIX, HP-UX, IRIX, Solaris, Cygwin, Interix, BeOS.
|
||||||
AC_CACHE_CHECK([for statvfs function (SVR4)], [fu_cv_sys_stat_statvfs],
|
AC_CACHE_CHECK([for statvfs function (SVR4)],
|
||||||
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
|
[fu_cv_sys_stat_statvfs],
|
||||||
|
[AC_LINK_IFELSE(
|
||||||
|
[AC_LANG_PROGRAM([[
|
||||||
|
#include <sys/types.h>
|
||||||
#ifdef __osf__
|
#ifdef __osf__
|
||||||
"Do not use Tru64's statvfs implementation"
|
"Do not use Tru64's statvfs implementation"
|
||||||
#endif
|
#endif
|
||||||
@ -68,45 +71,47 @@ struct statvfs fsd;
|
|||||||
int check_f_blocks_size[sizeof fsd.f_blocks * CHAR_BIT <= 32 ? -1 : 1];
|
int check_f_blocks_size[sizeof fsd.f_blocks * CHAR_BIT <= 32 ? -1 : 1];
|
||||||
#endif
|
#endif
|
||||||
]],
|
]],
|
||||||
[[statvfs (0, &fsd);]])],
|
[[statvfs (0, &fsd);]])],
|
||||||
[fu_cv_sys_stat_statvfs=yes],
|
[fu_cv_sys_stat_statvfs=yes],
|
||||||
[fu_cv_sys_stat_statvfs=no])])
|
[fu_cv_sys_stat_statvfs=no])
|
||||||
if test $fu_cv_sys_stat_statvfs = yes; then
|
|
||||||
ac_fsusage_space=yes
|
|
||||||
# AIX >= 5.2 has statvfs64 that has a wider f_blocks field than statvfs.
|
|
||||||
# glibc, HP-UX, IRIX, Solaris have statvfs64 as well, but on these systems
|
|
||||||
# statvfs with large-file support is already equivalent to statvfs64.
|
|
||||||
AC_CACHE_CHECK([whether to use statvfs64],
|
|
||||||
[fu_cv_sys_stat_statvfs64],
|
|
||||||
[AC_LINK_IFELSE(
|
|
||||||
[AC_LANG_PROGRAM(
|
|
||||||
[[#include <sys/types.h>
|
|
||||||
#include <sys/statvfs.h>
|
|
||||||
struct statvfs64 fsd;
|
|
||||||
int check_f_blocks_larger_in_statvfs64
|
|
||||||
[sizeof (((struct statvfs64 *) 0)->f_blocks)
|
|
||||||
> sizeof (((struct statvfs *) 0)->f_blocks)
|
|
||||||
? 1 : -1];
|
|
||||||
]],
|
|
||||||
[[statvfs64 (0, &fsd);]])],
|
|
||||||
[fu_cv_sys_stat_statvfs64=yes],
|
|
||||||
[fu_cv_sys_stat_statvfs64=no])
|
|
||||||
])
|
])
|
||||||
if test $fu_cv_sys_stat_statvfs64 = yes; then
|
if test $fu_cv_sys_stat_statvfs = yes; then
|
||||||
AC_DEFINE([STAT_STATVFS64], [1],
|
ac_fsusage_space=yes
|
||||||
[ Define if statvfs64 should be preferred over statvfs.])
|
# AIX >= 5.2 has statvfs64 that has a wider f_blocks field than statvfs.
|
||||||
else
|
# glibc, HP-UX, IRIX, Solaris have statvfs64 as well, but on these systems
|
||||||
AC_DEFINE([STAT_STATVFS], [1],
|
# statvfs with large-file support is already equivalent to statvfs64.
|
||||||
[ Define if there is a function named statvfs. (SVR4)])
|
AC_CACHE_CHECK([whether to use statvfs64],
|
||||||
|
[fu_cv_sys_stat_statvfs64],
|
||||||
|
[AC_LINK_IFELSE(
|
||||||
|
[AC_LANG_PROGRAM(
|
||||||
|
[[#include <sys/types.h>
|
||||||
|
#include <sys/statvfs.h>
|
||||||
|
struct statvfs64 fsd;
|
||||||
|
int check_f_blocks_larger_in_statvfs64
|
||||||
|
[sizeof (((struct statvfs64 *) 0)->f_blocks)
|
||||||
|
> sizeof (((struct statvfs *) 0)->f_blocks)
|
||||||
|
? 1 : -1];
|
||||||
|
]],
|
||||||
|
[[statvfs64 (0, &fsd);]])],
|
||||||
|
[fu_cv_sys_stat_statvfs64=yes],
|
||||||
|
[fu_cv_sys_stat_statvfs64=no])
|
||||||
|
])
|
||||||
|
if test $fu_cv_sys_stat_statvfs64 = yes; then
|
||||||
|
AC_DEFINE([STAT_STATVFS64], [1],
|
||||||
|
[Define if statvfs64 should be preferred over statvfs.])
|
||||||
|
else
|
||||||
|
AC_DEFINE([STAT_STATVFS], [1],
|
||||||
|
[Define if there is a function named statvfs. (SVR4)])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
# Check for this unconditionally so we have a
|
# Check for this unconditionally so we have a
|
||||||
# good fallback on glibc/Linux > 2.6 < 2.6.36
|
# good fallback on glibc/Linux > 2.6 < 2.6.36
|
||||||
AC_MSG_CHECKING([for two-argument statfs with statfs.f_frsize member])
|
AC_CACHE_CHECK([for two-argument statfs with statfs.f_frsize member],
|
||||||
AC_CACHE_VAL([fu_cv_sys_stat_statfs2_frsize],
|
[fu_cv_sys_stat_statfs2_frsize],
|
||||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
[AC_RUN_IFELSE(
|
||||||
|
[AC_LANG_SOURCE([[
|
||||||
#ifdef HAVE_SYS_PARAM_H
|
#ifdef HAVE_SYS_PARAM_H
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#endif
|
#endif
|
||||||
@ -119,26 +124,26 @@ AC_CACHE_VAL([fu_cv_sys_stat_statfs2_frsize],
|
|||||||
int
|
int
|
||||||
main ()
|
main ()
|
||||||
{
|
{
|
||||||
struct statfs fsd;
|
struct statfs fsd;
|
||||||
fsd.f_frsize = 0;
|
fsd.f_frsize = 0;
|
||||||
return statfs (".", &fsd) != 0;
|
return statfs (".", &fsd) != 0;
|
||||||
}]])],
|
}]])],
|
||||||
[fu_cv_sys_stat_statfs2_frsize=yes],
|
[fu_cv_sys_stat_statfs2_frsize=yes],
|
||||||
[fu_cv_sys_stat_statfs2_frsize=no],
|
[fu_cv_sys_stat_statfs2_frsize=no],
|
||||||
[fu_cv_sys_stat_statfs2_frsize=no])])
|
[fu_cv_sys_stat_statfs2_frsize=no])
|
||||||
AC_MSG_RESULT([$fu_cv_sys_stat_statfs2_frsize])
|
])
|
||||||
if test $fu_cv_sys_stat_statfs2_frsize = yes; then
|
if test $fu_cv_sys_stat_statfs2_frsize = yes; then
|
||||||
ac_fsusage_space=yes
|
ac_fsusage_space=yes
|
||||||
AC_DEFINE([STAT_STATFS2_FRSIZE], [1],
|
AC_DEFINE([STAT_STATFS2_FRSIZE], [1],
|
||||||
[ Define if statfs takes 2 args and struct statfs has a field named f_frsize.
|
[Define if statfs takes 2 args and struct statfs has a field named f_frsize.
|
||||||
(glibc/Linux > 2.6)])
|
(glibc/Linux > 2.6)])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test $ac_fsusage_space = no; then
|
if test $ac_fsusage_space = no; then
|
||||||
# DEC Alpha running OSF/1
|
# DEC Alpha running OSF/1
|
||||||
AC_MSG_CHECKING([for 3-argument statfs function (DEC OSF/1)])
|
AC_CACHE_CHECK([for 3-argument statfs function (DEC OSF/1)],
|
||||||
AC_CACHE_VAL([fu_cv_sys_stat_statfs3_osf1],
|
[fu_cv_sys_stat_statfs3_osf1],
|
||||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/mount.h>
|
#include <sys/mount.h>
|
||||||
@ -149,28 +154,27 @@ if test $ac_fsusage_space = no; then
|
|||||||
fsd.f_fsize = 0;
|
fsd.f_fsize = 0;
|
||||||
return statfs (".", &fsd, sizeof (struct statfs)) != 0;
|
return statfs (".", &fsd, sizeof (struct statfs)) != 0;
|
||||||
}]])],
|
}]])],
|
||||||
[fu_cv_sys_stat_statfs3_osf1=yes],
|
[fu_cv_sys_stat_statfs3_osf1=yes],
|
||||||
[fu_cv_sys_stat_statfs3_osf1=no],
|
[fu_cv_sys_stat_statfs3_osf1=no],
|
||||||
[fu_cv_sys_stat_statfs3_osf1=no])])
|
[fu_cv_sys_stat_statfs3_osf1=no])
|
||||||
AC_MSG_RESULT([$fu_cv_sys_stat_statfs3_osf1])
|
])
|
||||||
if test $fu_cv_sys_stat_statfs3_osf1 = yes; then
|
if test $fu_cv_sys_stat_statfs3_osf1 = yes; then
|
||||||
ac_fsusage_space=yes
|
ac_fsusage_space=yes
|
||||||
AC_DEFINE([STAT_STATFS3_OSF1], [1],
|
AC_DEFINE([STAT_STATFS3_OSF1], [1],
|
||||||
[ Define if statfs takes 3 args. (DEC Alpha running OSF/1)])
|
[Define if statfs takes 3 args. (DEC Alpha running OSF/1)])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test $ac_fsusage_space = no; then
|
if test $ac_fsusage_space = no; then
|
||||||
# glibc/Linux, Mac OS X, FreeBSD < 5.0, NetBSD < 3.0, OpenBSD < 4.4.
|
# glibc/Linux, Mac OS X, FreeBSD < 5.0, NetBSD < 3.0, OpenBSD < 4.4.
|
||||||
# (glibc/{Hurd,kFreeBSD}, FreeBSD >= 5.0, NetBSD >= 3.0,
|
# (glibc/{Hurd,kFreeBSD}, FreeBSD >= 5.0, NetBSD >= 3.0,
|
||||||
# OpenBSD >= 4.4, AIX, HP-UX, OSF/1, Cygwin already handled above.)
|
# OpenBSD >= 4.4, AIX, HP-UX, OSF/1, Cygwin already handled above.)
|
||||||
# (On IRIX you need to include <sys/statfs.h>, not only <sys/mount.h> and
|
# (On IRIX you need to include <sys/statfs.h>, not only <sys/mount.h> and
|
||||||
# <sys/vfs.h>.)
|
# <sys/vfs.h>.)
|
||||||
# (On Solaris, statfs has 4 arguments.)
|
# (On Solaris, statfs has 4 arguments.)
|
||||||
AC_MSG_CHECKING([for two-argument statfs with statfs.f_bsize dnl
|
AC_CACHE_CHECK([for two-argument statfs with statfs.f_bsize member (AIX, 4.3BSD)],
|
||||||
member (AIX, 4.3BSD)])
|
[fu_cv_sys_stat_statfs2_bsize],
|
||||||
AC_CACHE_VAL([fu_cv_sys_stat_statfs2_bsize],
|
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
||||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
|
||||||
#ifdef HAVE_SYS_PARAM_H
|
#ifdef HAVE_SYS_PARAM_H
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#endif
|
#endif
|
||||||
@ -183,57 +187,56 @@ member (AIX, 4.3BSD)])
|
|||||||
int
|
int
|
||||||
main ()
|
main ()
|
||||||
{
|
{
|
||||||
struct statfs fsd;
|
struct statfs fsd;
|
||||||
fsd.f_bsize = 0;
|
fsd.f_bsize = 0;
|
||||||
return statfs (".", &fsd) != 0;
|
return statfs (".", &fsd) != 0;
|
||||||
}]])],
|
}]])],
|
||||||
[fu_cv_sys_stat_statfs2_bsize=yes],
|
[fu_cv_sys_stat_statfs2_bsize=yes],
|
||||||
[fu_cv_sys_stat_statfs2_bsize=no],
|
[fu_cv_sys_stat_statfs2_bsize=no],
|
||||||
[fu_cv_sys_stat_statfs2_bsize=no])])
|
[fu_cv_sys_stat_statfs2_bsize=no])
|
||||||
AC_MSG_RESULT([$fu_cv_sys_stat_statfs2_bsize])
|
])
|
||||||
if test $fu_cv_sys_stat_statfs2_bsize = yes; then
|
if test $fu_cv_sys_stat_statfs2_bsize = yes; then
|
||||||
ac_fsusage_space=yes
|
ac_fsusage_space=yes
|
||||||
AC_DEFINE([STAT_STATFS2_BSIZE], [1],
|
AC_DEFINE([STAT_STATFS2_BSIZE], [1],
|
||||||
[ Define if statfs takes 2 args and struct statfs has a field named f_bsize.
|
[Define if statfs takes 2 args and struct statfs has a field named f_bsize.
|
||||||
(4.3BSD, SunOS 4, HP-UX, AIX PS/2)])
|
(4.3BSD, SunOS 4, HP-UX)])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test $ac_fsusage_space = no; then
|
if test $ac_fsusage_space = no; then
|
||||||
# SVR3
|
# SVR3
|
||||||
# (Solaris already handled above.)
|
# (Solaris already handled above.)
|
||||||
AC_MSG_CHECKING([for four-argument statfs (AIX-3.2.5, SVR3)])
|
AC_CACHE_CHECK([for four-argument statfs (SVR3)],
|
||||||
AC_CACHE_VAL([fu_cv_sys_stat_statfs4],
|
[fu_cv_sys_stat_statfs4],
|
||||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/statfs.h>
|
#include <sys/statfs.h>
|
||||||
int
|
int
|
||||||
main ()
|
main ()
|
||||||
{
|
{
|
||||||
struct statfs fsd;
|
struct statfs fsd;
|
||||||
return statfs (".", &fsd, sizeof fsd, 0) != 0;
|
return statfs (".", &fsd, sizeof fsd, 0) != 0;
|
||||||
}]])],
|
}]])],
|
||||||
[fu_cv_sys_stat_statfs4=yes],
|
[fu_cv_sys_stat_statfs4=yes],
|
||||||
[fu_cv_sys_stat_statfs4=no],
|
[fu_cv_sys_stat_statfs4=no],
|
||||||
[fu_cv_sys_stat_statfs4=no])])
|
[fu_cv_sys_stat_statfs4=no])
|
||||||
AC_MSG_RESULT([$fu_cv_sys_stat_statfs4])
|
])
|
||||||
if test $fu_cv_sys_stat_statfs4 = yes; then
|
if test $fu_cv_sys_stat_statfs4 = yes; then
|
||||||
ac_fsusage_space=yes
|
ac_fsusage_space=yes
|
||||||
AC_DEFINE([STAT_STATFS4], [1],
|
AC_DEFINE([STAT_STATFS4], [1],
|
||||||
[ Define if statfs takes 4 args. (SVR3, Dynix, old Irix, old AIX, Dolphin)])
|
[Define if statfs takes 4 args. (SVR3, old Irix)])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test $ac_fsusage_space = no; then
|
if test $ac_fsusage_space = no; then
|
||||||
# 4.4BSD and older NetBSD
|
# 4.4BSD and older NetBSD
|
||||||
# (OSF/1 already handled above.)
|
# (OSF/1 already handled above.)
|
||||||
# (On AIX, you need to include <sys/statfs.h>, not only <sys/mount.h>.)
|
# (On AIX, you need to include <sys/statfs.h>, not only <sys/mount.h>.)
|
||||||
# (On Solaris, statfs has 4 arguments and 'struct statfs' is not declared in
|
# (On Solaris, statfs has 4 arguments and 'struct statfs' is not declared in
|
||||||
# <sys/mount.h>.)
|
# <sys/mount.h>.)
|
||||||
AC_MSG_CHECKING([for two-argument statfs with statfs.f_fsize dnl
|
AC_CACHE_CHECK([for two-argument statfs with statfs.f_fsize member (4.4BSD and NetBSD)],
|
||||||
member (4.4BSD and NetBSD)])
|
[fu_cv_sys_stat_statfs2_fsize],
|
||||||
AC_CACHE_VAL([fu_cv_sys_stat_statfs2_fsize],
|
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
||||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#ifdef HAVE_SYS_PARAM_H
|
#ifdef HAVE_SYS_PARAM_H
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
@ -244,58 +247,23 @@ member (4.4BSD and NetBSD)])
|
|||||||
int
|
int
|
||||||
main ()
|
main ()
|
||||||
{
|
{
|
||||||
struct statfs fsd;
|
struct statfs fsd;
|
||||||
fsd.f_fsize = 0;
|
fsd.f_fsize = 0;
|
||||||
return statfs (".", &fsd) != 0;
|
return statfs (".", &fsd) != 0;
|
||||||
}]])],
|
}]])],
|
||||||
[fu_cv_sys_stat_statfs2_fsize=yes],
|
[fu_cv_sys_stat_statfs2_fsize=yes],
|
||||||
[fu_cv_sys_stat_statfs2_fsize=no],
|
[fu_cv_sys_stat_statfs2_fsize=no],
|
||||||
[fu_cv_sys_stat_statfs2_fsize=no])])
|
[fu_cv_sys_stat_statfs2_fsize=no])
|
||||||
AC_MSG_RESULT([$fu_cv_sys_stat_statfs2_fsize])
|
])
|
||||||
if test $fu_cv_sys_stat_statfs2_fsize = yes; then
|
if test $fu_cv_sys_stat_statfs2_fsize = yes; then
|
||||||
ac_fsusage_space=yes
|
ac_fsusage_space=yes
|
||||||
AC_DEFINE([STAT_STATFS2_FSIZE], [1],
|
AC_DEFINE([STAT_STATFS2_FSIZE], [1],
|
||||||
[ Define if statfs takes 2 args and struct statfs has a field named f_fsize.
|
[Define if statfs takes 2 args and struct statfs has a field named f_fsize.
|
||||||
(4.4BSD, NetBSD)])
|
(4.4BSD, NetBSD)])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test $ac_fsusage_space = no; then
|
AS_IF([test $ac_fsusage_space = yes], [$1], [$2])
|
||||||
# Ultrix
|
|
||||||
AC_MSG_CHECKING([for two-argument statfs with struct fs_data (Ultrix)])
|
|
||||||
AC_CACHE_VAL([fu_cv_sys_stat_fs_data],
|
|
||||||
[AC_RUN_IFELSE([AC_LANG_SOURCE([[
|
|
||||||
#include <sys/types.h>
|
|
||||||
#ifdef HAVE_SYS_PARAM_H
|
|
||||||
#include <sys/param.h>
|
|
||||||
#endif
|
|
||||||
#ifdef HAVE_SYS_MOUNT_H
|
|
||||||
#include <sys/mount.h>
|
|
||||||
#endif
|
|
||||||
#ifdef HAVE_SYS_FS_TYPES_H
|
|
||||||
#include <sys/fs_types.h>
|
|
||||||
#endif
|
|
||||||
int
|
|
||||||
main ()
|
|
||||||
{
|
|
||||||
struct fs_data fsd;
|
|
||||||
/* Ultrix's statfs returns 1 for success,
|
|
||||||
0 for not mounted, -1 for failure. */
|
|
||||||
return statfs (".", &fsd) != 1;
|
|
||||||
}]])],
|
|
||||||
[fu_cv_sys_stat_fs_data=yes],
|
|
||||||
[fu_cv_sys_stat_fs_data=no],
|
|
||||||
[fu_cv_sys_stat_fs_data=no])])
|
|
||||||
AC_MSG_RESULT([$fu_cv_sys_stat_fs_data])
|
|
||||||
if test $fu_cv_sys_stat_fs_data = yes; then
|
|
||||||
ac_fsusage_space=yes
|
|
||||||
AC_DEFINE([STAT_STATFS2_FS_DATA], [1],
|
|
||||||
[ Define if statfs takes 2 args and the second argument has
|
|
||||||
type struct fs_data. (Ultrix)])
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
AS_IF([test $ac_fsusage_space = yes], [$1], [$2])
|
|
||||||
|
|
||||||
])
|
])
|
||||||
|
|
||||||
@ -305,18 +273,22 @@ AS_IF([test $ac_fsusage_space = yes], [$1], [$2])
|
|||||||
# enable the work-around code in fsusage.c.
|
# enable the work-around code in fsusage.c.
|
||||||
AC_DEFUN([gl_STATFS_TRUNCATES],
|
AC_DEFUN([gl_STATFS_TRUNCATES],
|
||||||
[
|
[
|
||||||
AC_MSG_CHECKING([for statfs that truncates block counts])
|
AC_CACHE_CHECK([for statfs that truncates block counts],
|
||||||
AC_CACHE_VAL([fu_cv_sys_truncating_statfs],
|
[fu_cv_sys_truncating_statfs],
|
||||||
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
[AC_COMPILE_IFELSE(
|
||||||
|
[AC_LANG_PROGRAM([[
|
||||||
#if !defined(sun) && !defined(__sun)
|
#if !defined(sun) && !defined(__sun)
|
||||||
choke -- this is a workaround for a Sun-specific problem
|
choke -- this is a workaround for a Sun-specific problem
|
||||||
#endif
|
#endif
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/vfs.h>]],
|
#include <sys/vfs.h>
|
||||||
[[struct statfs t; long c = *(t.f_spare);
|
]],
|
||||||
if (c) return 0;]])],
|
[[struct statfs t; long c = *(t.f_spare);
|
||||||
[fu_cv_sys_truncating_statfs=yes],
|
if (c) return 0;
|
||||||
[fu_cv_sys_truncating_statfs=no])])
|
]])],
|
||||||
|
[fu_cv_sys_truncating_statfs=yes],
|
||||||
|
[fu_cv_sys_truncating_statfs=no])
|
||||||
|
])
|
||||||
if test $fu_cv_sys_truncating_statfs = yes; then
|
if test $fu_cv_sys_truncating_statfs = yes; then
|
||||||
AC_DEFINE([STATFS_TRUNCATES_BLOCK_COUNTS], [1],
|
AC_DEFINE([STATFS_TRUNCATES_BLOCK_COUNTS], [1],
|
||||||
[Define if the block counts reported by statfs may be truncated to 2GB
|
[Define if the block counts reported by statfs may be truncated to 2GB
|
||||||
@ -324,13 +296,12 @@ choke -- this is a workaround for a Sun-specific problem
|
|||||||
(SunOS 4.1.2, 4.1.3, and 4.1.3_U1 are reported to have this problem.
|
(SunOS 4.1.2, 4.1.3, and 4.1.3_U1 are reported to have this problem.
|
||||||
SunOS 4.1.1 seems not to be affected.)])
|
SunOS 4.1.1 seems not to be affected.)])
|
||||||
fi
|
fi
|
||||||
AC_MSG_RESULT([$fu_cv_sys_truncating_statfs])
|
|
||||||
])
|
])
|
||||||
|
|
||||||
|
|
||||||
# Prerequisites of lib/fsusage.c not done by gl_FILE_SYSTEM_USAGE.
|
# Prerequisites of lib/fsusage.c not done by gl_FILE_SYSTEM_USAGE.
|
||||||
AC_DEFUN([gl_PREREQ_FSUSAGE_EXTRA],
|
AC_DEFUN([gl_PREREQ_FSUSAGE_EXTRA],
|
||||||
[
|
[
|
||||||
AC_CHECK_HEADERS([dustat.h sys/fs/s5param.h sys/statfs.h])
|
AC_CHECK_HEADERS([sys/fs/s5param.h sys/statfs.h])
|
||||||
gl_STATFS_TRUNCATES
|
gl_STATFS_TRUNCATES
|
||||||
])
|
])
|
||||||
|
@ -1,47 +1,49 @@
|
|||||||
# serial 33
|
# serial 36
|
||||||
# How to list mounted file systems.
|
# How to list mounted file systems.
|
||||||
|
|
||||||
# Copyright (C) 1998-2004, 2006, 2009-2017 Free Software Foundation, Inc.
|
# Copyright (C) 1998-2004, 2006, 2009-2018 Free Software Foundation, Inc.
|
||||||
#
|
#
|
||||||
# This file is free software; the Free Software Foundation
|
# This file is free software; the Free Software Foundation
|
||||||
# gives unlimited permission to copy and/or distribute it,
|
# gives unlimited permission to copy and/or distribute it,
|
||||||
# with or without modifications, as long as this notice is preserved.
|
# with or without modifications, as long as this notice is preserved.
|
||||||
|
|
||||||
dnl From Jim Meyering.
|
dnl From Jim Meyering.
|
||||||
dnl
|
|
||||||
|
AC_PREREQ([2.60])
|
||||||
|
|
||||||
dnl This is not pretty. I've just taken the autoconf code and wrapped
|
dnl This is not pretty. I've just taken the autoconf code and wrapped
|
||||||
dnl it in an AC_DEFUN and made some other fixes.
|
dnl it in an AC_DEFUN and made some other fixes.
|
||||||
dnl
|
|
||||||
|
|
||||||
# Replace Autoconf's AC_FUNC_GETMNTENT to work around a bug in Autoconf
|
# Replace Autoconf's AC_FUNC_GETMNTENT to omit checks that are unnecessary
|
||||||
# through Autoconf 2.59. We can remove this once we assume Autoconf 2.60
|
# nowadays.
|
||||||
# or later.
|
|
||||||
AC_DEFUN([AC_FUNC_GETMNTENT],
|
AC_DEFUN([AC_FUNC_GETMNTENT],
|
||||||
[# getmntent is in the standard C library on UNICOS, in -lsun on Irix 4,
|
[
|
||||||
# -lseq on Dynix/PTX, -lgen on Unixware.
|
# getmntent is in the standard C library on UNICOS, in -lsun on Irix 4,
|
||||||
AC_SEARCH_LIBS([getmntent], [sun seq gen])
|
# -lgen on Unixware.
|
||||||
AC_CHECK_FUNCS([getmntent])
|
AC_SEARCH_LIBS([getmntent], [sun gen])
|
||||||
|
AC_CHECK_FUNCS([getmntent])
|
||||||
])
|
])
|
||||||
|
|
||||||
# gl_LIST_MOUNTED_FILE_SYSTEMS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
|
# gl_LIST_MOUNTED_FILE_SYSTEMS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
|
||||||
AC_DEFUN([gl_LIST_MOUNTED_FILE_SYSTEMS],
|
AC_DEFUN([gl_LIST_MOUNTED_FILE_SYSTEMS],
|
||||||
[
|
[
|
||||||
AC_REQUIRE([AC_CANONICAL_HOST])
|
AC_REQUIRE([AC_CANONICAL_HOST])
|
||||||
AC_CHECK_FUNCS([listmntent getmntinfo])
|
AC_CHECK_FUNCS([listmntent])
|
||||||
AC_CHECK_HEADERS_ONCE([sys/param.h sys/statvfs.h])
|
AC_CHECK_HEADERS_ONCE([sys/param.h sys/statvfs.h])
|
||||||
|
|
||||||
# We must include grp.h before ucred.h on OSF V4.0, since ucred.h uses
|
# We must include grp.h before ucred.h on OSF V4.0, since ucred.h uses
|
||||||
# NGROUPS (as the array dimension for a struct member) without a definition.
|
# NGROUPS (as the array dimension for a struct member) without a definition.
|
||||||
AC_CHECK_HEADERS([sys/ucred.h], [], [], [#include <grp.h>])
|
AC_CHECK_HEADERS([sys/ucred.h], [], [], [#include <grp.h>])
|
||||||
|
|
||||||
AC_CHECK_HEADERS([sys/mount.h], [], [],
|
AC_CHECK_HEADERS([sys/mount.h], [], [],
|
||||||
[AC_INCLUDES_DEFAULT
|
[AC_INCLUDES_DEFAULT
|
||||||
[#if HAVE_SYS_PARAM_H
|
[#if HAVE_SYS_PARAM_H
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#endif]])
|
#endif
|
||||||
|
]])
|
||||||
|
|
||||||
AC_CHECK_HEADERS([mntent.h sys/fs_types.h])
|
AC_CHECK_HEADERS([mntent.h sys/fs_types.h])
|
||||||
getfsstat_includes="\
|
getfsstat_includes="\
|
||||||
$ac_includes_default
|
$ac_includes_default
|
||||||
#if HAVE_SYS_PARAM_H
|
#if HAVE_SYS_PARAM_H
|
||||||
# include <sys/param.h> /* needed by powerpc-apple-darwin1.3.7 */
|
# include <sys/param.h> /* needed by powerpc-apple-darwin1.3.7 */
|
||||||
@ -57,74 +59,42 @@ $ac_includes_default
|
|||||||
# include <sys/fs_types.h> /* needed by powerpc-apple-darwin1.3.7 */
|
# include <sys/fs_types.h> /* needed by powerpc-apple-darwin1.3.7 */
|
||||||
#endif
|
#endif
|
||||||
"
|
"
|
||||||
AC_CHECK_MEMBERS([struct fsstat.f_fstypename],,,[$getfsstat_includes])
|
AC_CHECK_MEMBERS([struct fsstat.f_fstypename],,,[$getfsstat_includes])
|
||||||
|
|
||||||
# Determine how to get the list of mounted file systems.
|
# Determine how to get the list of mounted file systems.
|
||||||
ac_list_mounted_fs=
|
ac_list_mounted_fs=
|
||||||
|
|
||||||
# If the getmntent function is available but not in the standard library,
|
# If the getmntent function is available but not in the standard library,
|
||||||
# make sure LIBS contains the appropriate -l option.
|
# make sure LIBS contains the appropriate -l option.
|
||||||
AC_FUNC_GETMNTENT
|
AC_FUNC_GETMNTENT
|
||||||
|
|
||||||
# This test must precede the ones for getmntent because Unicos-9 is
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
# reported to have the getmntent function, but its support is incompatible
|
# AIX.
|
||||||
# with other getmntent implementations.
|
AC_CACHE_CHECK([for mntctl function and struct vmount],
|
||||||
|
[fu_cv_sys_mounted_vmount],
|
||||||
# NOTE: Normally, I wouldn't use a check for system type as I've done for
|
[AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <fshelp.h>]])],
|
||||||
# 'CRAY' below since that goes against the whole autoconf philosophy. But
|
[fu_cv_sys_mounted_vmount=yes],
|
||||||
# I think there is too great a chance that some non-Cray system has a
|
[fu_cv_sys_mounted_vmount=no])])
|
||||||
# function named listmntent to risk the false positive.
|
if test $fu_cv_sys_mounted_vmount = yes; then
|
||||||
|
ac_list_mounted_fs=found
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
AC_DEFINE([MOUNTED_VMOUNT], [1],
|
||||||
# Cray UNICOS 9
|
|
||||||
AC_MSG_CHECKING([for listmntent of Cray/Unicos-9])
|
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_cray_listmntent],
|
|
||||||
[fu_cv_sys_mounted_cray_listmntent=no
|
|
||||||
AC_EGREP_CPP([yes],
|
|
||||||
[#ifdef _CRAY
|
|
||||||
yes
|
|
||||||
#endif
|
|
||||||
], [test $ac_cv_func_listmntent = yes \
|
|
||||||
&& fu_cv_sys_mounted_cray_listmntent=yes]
|
|
||||||
)
|
|
||||||
]
|
|
||||||
)
|
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_cray_listmntent])
|
|
||||||
if test $fu_cv_sys_mounted_cray_listmntent = yes; then
|
|
||||||
ac_list_mounted_fs=found
|
|
||||||
AC_DEFINE([MOUNTED_LISTMNTENT], [1],
|
|
||||||
[Define if there is a function named listmntent that can be used to
|
|
||||||
list all mounted file systems. (UNICOS)])
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
|
||||||
# AIX.
|
|
||||||
AC_MSG_CHECKING([for mntctl function and struct vmount])
|
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_vmount],
|
|
||||||
[AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <fshelp.h>]])],
|
|
||||||
[fu_cv_sys_mounted_vmount=yes],
|
|
||||||
[fu_cv_sys_mounted_vmount=no])])
|
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_vmount])
|
|
||||||
if test $fu_cv_sys_mounted_vmount = yes; then
|
|
||||||
ac_list_mounted_fs=found
|
|
||||||
AC_DEFINE([MOUNTED_VMOUNT], [1],
|
|
||||||
[Define if there is a function named mntctl that can be used to read
|
[Define if there is a function named mntctl that can be used to read
|
||||||
the list of mounted file systems, and there is a system header file
|
the list of mounted file systems, and there is a system header file
|
||||||
that declares 'struct vmount'. (AIX)])
|
that declares 'struct vmount'. (AIX)])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test $ac_cv_func_getmntent = yes; then
|
if test $ac_cv_func_getmntent = yes; then
|
||||||
|
|
||||||
# This system has the getmntent function.
|
# This system has the getmntent function.
|
||||||
# Determine whether it's the one-argument variant or the two-argument one.
|
# Determine whether it's the one-argument variant or the two-argument one.
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
# GNU/Linux, 4.3BSD, SunOS, HP-UX, Dynix, Irix
|
# glibc, HP-UX, IRIX, Cygwin, Android, also (obsolete) 4.3BSD, SunOS.
|
||||||
AC_MSG_CHECKING([for one-argument getmntent function])
|
AC_CACHE_CHECK([for one-argument getmntent function],
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_getmntent1],
|
[fu_cv_sys_mounted_getmntent1],
|
||||||
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
[AC_COMPILE_IFELSE(
|
||||||
|
[AC_LANG_PROGRAM([[
|
||||||
/* SunOS 4.1.x /usr/include/mntent.h needs this for FILE */
|
/* SunOS 4.1.x /usr/include/mntent.h needs this for FILE */
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
@ -136,109 +106,143 @@ if test $ac_cv_func_getmntent = yes; then
|
|||||||
# if defined MNT_MNTTAB /* HP-UX. */
|
# if defined MNT_MNTTAB /* HP-UX. */
|
||||||
# define MOUNTED MNT_MNTTAB
|
# define MOUNTED MNT_MNTTAB
|
||||||
# endif
|
# endif
|
||||||
# if defined MNTTABNAME /* Dynix. */
|
|
||||||
# define MOUNTED MNTTABNAME
|
|
||||||
# endif
|
|
||||||
#endif
|
#endif
|
||||||
]],
|
]],
|
||||||
[[ struct mntent *mnt = 0; char *table = MOUNTED;
|
[[struct mntent *mnt = 0; char *table = MOUNTED;
|
||||||
if (sizeof mnt && sizeof table) return 0;]])],
|
if (sizeof mnt && sizeof table) return 0;
|
||||||
[fu_cv_sys_mounted_getmntent1=yes],
|
]])],
|
||||||
[fu_cv_sys_mounted_getmntent1=no])])
|
[fu_cv_sys_mounted_getmntent1=yes],
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_getmntent1])
|
[fu_cv_sys_mounted_getmntent1=no])
|
||||||
if test $fu_cv_sys_mounted_getmntent1 = yes; then
|
])
|
||||||
ac_list_mounted_fs=found
|
if test $fu_cv_sys_mounted_getmntent1 = yes; then
|
||||||
AC_DEFINE([MOUNTED_GETMNTENT1], [1],
|
ac_list_mounted_fs=found
|
||||||
[Define if there is a function named getmntent for reading the list
|
AC_DEFINE([MOUNTED_GETMNTENT1], [1],
|
||||||
of mounted file systems, and that function takes a single argument.
|
[Define if there is a function named getmntent for reading the list
|
||||||
(4.3BSD, SunOS, HP-UX, Dynix, Irix)])
|
of mounted file systems, and that function takes a single argument.
|
||||||
AC_CHECK_FUNCS([hasmntopt])
|
(4.3BSD, SunOS, HP-UX, Irix)])
|
||||||
|
AC_CHECK_FUNCS([hasmntopt])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
|
# Solaris >= 8.
|
||||||
|
AC_CACHE_CHECK([for getextmntent function],
|
||||||
|
[fu_cv_sys_mounted_getextmntent],
|
||||||
|
[AC_EGREP_HEADER([getextmntent], [sys/mnttab.h],
|
||||||
|
[fu_cv_sys_mounted_getextmntent=yes],
|
||||||
|
[fu_cv_sys_mounted_getextmntent=no])])
|
||||||
|
if test $fu_cv_sys_mounted_getextmntent = yes; then
|
||||||
|
ac_list_mounted_fs=found
|
||||||
|
AC_DEFINE([MOUNTED_GETEXTMNTENT], [1],
|
||||||
|
[Define if there is a function named getextmntent for reading the list
|
||||||
|
of mounted file systems. (Solaris)])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
|
# Solaris < 8, also (obsolete) SVR4.
|
||||||
|
# Solaris >= 8 has the two-argument getmntent but is already handled above.
|
||||||
|
AC_CACHE_CHECK([for two-argument getmntent function],
|
||||||
|
[fu_cv_sys_mounted_getmntent2],
|
||||||
|
[AC_EGREP_HEADER([getmntent], [sys/mnttab.h],
|
||||||
|
[fu_cv_sys_mounted_getmntent2=yes],
|
||||||
|
[fu_cv_sys_mounted_getmntent2=no])
|
||||||
|
])
|
||||||
|
if test $fu_cv_sys_mounted_getmntent2 = yes; then
|
||||||
|
ac_list_mounted_fs=found
|
||||||
|
AC_DEFINE([MOUNTED_GETMNTENT2], [1],
|
||||||
|
[Define if there is a function named getmntent for reading the list of
|
||||||
|
mounted file systems, and that function takes two arguments. (SVR4)])
|
||||||
|
AC_CHECK_FUNCS([hasmntopt])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
# SVR4
|
# OSF/1, also (obsolete) Apple Darwin 1.3.
|
||||||
AC_MSG_CHECKING([for two-argument getmntent function])
|
# powerpc-apple-darwin1.3.7 needs sys/param.h sys/ucred.h sys/fs_types.h
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_getmntent2],
|
|
||||||
[AC_EGREP_HEADER([getmntent], [sys/mnttab.h],
|
|
||||||
fu_cv_sys_mounted_getmntent2=yes,
|
|
||||||
fu_cv_sys_mounted_getmntent2=no)])
|
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_getmntent2])
|
|
||||||
if test $fu_cv_sys_mounted_getmntent2 = yes; then
|
|
||||||
ac_list_mounted_fs=found
|
|
||||||
AC_DEFINE([MOUNTED_GETMNTENT2], [1],
|
|
||||||
[Define if there is a function named getmntent for reading the list of
|
|
||||||
mounted file systems, and that function takes two arguments. (SVR4)])
|
|
||||||
AC_CHECK_FUNCS([hasmntopt])
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
fi
|
AC_CACHE_CHECK([for getfsstat function],
|
||||||
|
[fu_cv_sys_mounted_getfsstat],
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
[AC_LINK_IFELSE(
|
||||||
# DEC Alpha running OSF/1, and Apple Darwin 1.3.
|
[AC_LANG_PROGRAM([[
|
||||||
# powerpc-apple-darwin1.3.7 needs sys/param.h sys/ucred.h sys/fs_types.h
|
|
||||||
|
|
||||||
AC_MSG_CHECKING([for getfsstat function])
|
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_getfsstat],
|
|
||||||
[AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#if HAVE_STRUCT_FSSTAT_F_FSTYPENAME
|
#if HAVE_STRUCT_FSSTAT_F_FSTYPENAME
|
||||||
# define FS_TYPE(Ent) ((Ent).f_fstypename)
|
# define FS_TYPE(Ent) ((Ent).f_fstypename)
|
||||||
#else
|
#else
|
||||||
# define FS_TYPE(Ent) mnt_names[(Ent).f_type]
|
# define FS_TYPE(Ent) mnt_names[(Ent).f_type]
|
||||||
#endif
|
#endif
|
||||||
$getfsstat_includes]]
|
$getfsstat_includes
|
||||||
,
|
]],
|
||||||
[[struct statfs *stats;
|
[[struct statfs *stats;
|
||||||
int numsys = getfsstat ((struct statfs *)0, 0L, MNT_WAIT);
|
int numsys = getfsstat ((struct statfs *)0, 0L, MNT_WAIT);
|
||||||
char *t = FS_TYPE (*stats); ]])],
|
char *t = FS_TYPE (*stats);
|
||||||
[fu_cv_sys_mounted_getfsstat=yes],
|
]])],
|
||||||
[fu_cv_sys_mounted_getfsstat=no])])
|
[fu_cv_sys_mounted_getfsstat=yes],
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_getfsstat])
|
[fu_cv_sys_mounted_getfsstat=no])
|
||||||
if test $fu_cv_sys_mounted_getfsstat = yes; then
|
])
|
||||||
ac_list_mounted_fs=found
|
if test $fu_cv_sys_mounted_getfsstat = yes; then
|
||||||
AC_DEFINE([MOUNTED_GETFSSTAT], [1],
|
ac_list_mounted_fs=found
|
||||||
[Define if there is a function named getfsstat for reading the
|
AC_DEFINE([MOUNTED_GETFSSTAT], [1],
|
||||||
list of mounted file systems. (DEC Alpha running OSF/1)])
|
[Define if there is a function named getfsstat for reading the
|
||||||
|
list of mounted file systems. (DEC Alpha running OSF/1)])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
# SVR3
|
# (obsolete) SVR3
|
||||||
AC_MSG_CHECKING([for FIXME existence of three headers])
|
AC_CACHE_CHECK([for FIXME existence of three headers],
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_fread_fstyp],
|
[fu_cv_sys_mounted_fread_fstyp],
|
||||||
[AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
|
[AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
|
||||||
#include <sys/statfs.h>
|
#include <sys/statfs.h>
|
||||||
#include <sys/fstyp.h>
|
#include <sys/fstyp.h>
|
||||||
#include <mnttab.h>]])],
|
#include <mnttab.h>
|
||||||
[fu_cv_sys_mounted_fread_fstyp=yes],
|
]])],
|
||||||
[fu_cv_sys_mounted_fread_fstyp=no])])
|
[fu_cv_sys_mounted_fread_fstyp=yes],
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_fread_fstyp])
|
[fu_cv_sys_mounted_fread_fstyp=no])
|
||||||
if test $fu_cv_sys_mounted_fread_fstyp = yes; then
|
])
|
||||||
ac_list_mounted_fs=found
|
if test $fu_cv_sys_mounted_fread_fstyp = yes; then
|
||||||
AC_DEFINE([MOUNTED_FREAD_FSTYP], [1],
|
ac_list_mounted_fs=found
|
||||||
[Define if (like SVR2) there is no specific function for reading the
|
AC_DEFINE([MOUNTED_FREAD_FSTYP], [1],
|
||||||
list of mounted file systems, and your system has these header files:
|
[Define if (like SVR2) there is no specific function for reading the
|
||||||
<sys/fstyp.h> and <sys/statfs.h>. (SVR3)])
|
list of mounted file systems, and your system has these header files:
|
||||||
|
<sys/fstyp.h> and <sys/statfs.h>. (SVR3)])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
# 4.4BSD and DEC OSF/1.
|
# Mac OS X, FreeBSD, NetBSD, OpenBSD, Minix, also (obsolete) 4.4BSD.
|
||||||
AC_MSG_CHECKING([for getmntinfo function])
|
# OSF/1 also has getmntinfo but is already handled above.
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_getmntinfo],
|
# We cannot use AC_CHECK_FUNCS([getmntinfo]) here, because at the linker
|
||||||
[
|
# level the function is sometimes called getmntinfo64 or getmntinfo$INODE64
|
||||||
test "$ac_cv_func_getmntinfo" = yes \
|
# on Mac OS X, __getmntinfo13 on NetBSD and Minix, _F64_getmntinfo on OSF/1.
|
||||||
&& fu_cv_sys_mounted_getmntinfo=yes \
|
AC_CACHE_CHECK([for getmntinfo function],
|
||||||
|| fu_cv_sys_mounted_getmntinfo=no
|
[fu_cv_sys_mounted_getmntinfo],
|
||||||
])
|
[AC_LINK_IFELSE(
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_getmntinfo])
|
[AC_LANG_PROGRAM([[
|
||||||
if test $fu_cv_sys_mounted_getmntinfo = yes; then
|
#if HAVE_SYS_PARAM_H
|
||||||
AC_MSG_CHECKING([whether getmntinfo returns statvfs structures])
|
# include <sys/param.h>
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_getmntinfo2],
|
#endif
|
||||||
[
|
#include <sys/types.h>
|
||||||
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
#if HAVE_SYS_MOUNT_H
|
||||||
|
# include <sys/mount.h>
|
||||||
|
#endif
|
||||||
|
#if HAVE_SYS_STATVFS_H
|
||||||
|
# include <sys/statvfs.h>
|
||||||
|
#endif
|
||||||
|
#include <stdlib.h>
|
||||||
|
]],
|
||||||
|
[[int count = getmntinfo (NULL, MNT_WAIT);
|
||||||
|
]])],
|
||||||
|
[fu_cv_sys_mounted_getmntinfo=yes],
|
||||||
|
[fu_cv_sys_mounted_getmntinfo=no])
|
||||||
|
])
|
||||||
|
if test $fu_cv_sys_mounted_getmntinfo = yes; then
|
||||||
|
AC_CACHE_CHECK([whether getmntinfo returns statvfs structures],
|
||||||
|
[fu_cv_sys_mounted_getmntinfo2],
|
||||||
|
[AC_COMPILE_IFELSE(
|
||||||
|
[AC_LANG_PROGRAM([[
|
||||||
#if HAVE_SYS_PARAM_H
|
#if HAVE_SYS_PARAM_H
|
||||||
# include <sys/param.h>
|
# include <sys/param.h>
|
||||||
#endif
|
#endif
|
||||||
@ -254,106 +258,73 @@ extern
|
|||||||
"C"
|
"C"
|
||||||
#endif
|
#endif
|
||||||
int getmntinfo (struct statfs **, int);
|
int getmntinfo (struct statfs **, int);
|
||||||
]], [])],
|
]], [])],
|
||||||
[fu_cv_sys_mounted_getmntinfo2=no],
|
[fu_cv_sys_mounted_getmntinfo2=no],
|
||||||
[fu_cv_sys_mounted_getmntinfo2=yes])
|
[fu_cv_sys_mounted_getmntinfo2=yes])
|
||||||
|
])
|
||||||
|
if test $fu_cv_sys_mounted_getmntinfo2 = no; then
|
||||||
|
# Mac OS X, FreeBSD, OpenBSD, also (obsolete) 4.4BSD.
|
||||||
|
ac_list_mounted_fs=found
|
||||||
|
AC_DEFINE([MOUNTED_GETMNTINFO], [1],
|
||||||
|
[Define if there is a function named getmntinfo for reading the
|
||||||
|
list of mounted file systems and it returns an array of
|
||||||
|
'struct statfs'. (4.4BSD, Darwin)])
|
||||||
|
else
|
||||||
|
# NetBSD, Minix.
|
||||||
|
ac_list_mounted_fs=found
|
||||||
|
AC_DEFINE([MOUNTED_GETMNTINFO2], [1],
|
||||||
|
[Define if there is a function named getmntinfo for reading the
|
||||||
|
list of mounted file systems and it returns an array of
|
||||||
|
'struct statvfs'. (NetBSD 3.0)])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
|
# Haiku, also (obsolete) BeOS.
|
||||||
|
AC_CHECK_FUNCS([next_dev fs_stat_dev])
|
||||||
|
AC_CHECK_HEADERS([fs_info.h])
|
||||||
|
AC_CACHE_CHECK([for BEOS mounted file system support functions],
|
||||||
|
[fu_cv_sys_mounted_fs_stat_dev],
|
||||||
|
[if test $ac_cv_header_fs_info_h = yes \
|
||||||
|
&& test $ac_cv_func_next_dev = yes \
|
||||||
|
&& test $ac_cv_func_fs_stat_dev = yes; then
|
||||||
|
fu_cv_sys_mounted_fs_stat_dev=yes
|
||||||
|
else
|
||||||
|
fu_cv_sys_mounted_fs_stat_dev=no
|
||||||
|
fi
|
||||||
])
|
])
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_getmntinfo2])
|
if test $fu_cv_sys_mounted_fs_stat_dev = yes; then
|
||||||
if test $fu_cv_sys_mounted_getmntinfo2 = no; then
|
|
||||||
ac_list_mounted_fs=found
|
ac_list_mounted_fs=found
|
||||||
AC_DEFINE([MOUNTED_GETMNTINFO], [1],
|
AC_DEFINE([MOUNTED_FS_STAT_DEV], [1],
|
||||||
[Define if there is a function named getmntinfo for reading the
|
[Define if there are functions named next_dev and fs_stat_dev for
|
||||||
list of mounted file systems and it returns an array of
|
reading the list of mounted file systems. (BeOS)])
|
||||||
'struct statfs'. (4.4BSD, Darwin)])
|
|
||||||
else
|
|
||||||
ac_list_mounted_fs=found
|
|
||||||
AC_DEFINE([MOUNTED_GETMNTINFO2], [1],
|
|
||||||
[Define if there is a function named getmntinfo for reading the
|
|
||||||
list of mounted file systems and it returns an array of
|
|
||||||
'struct statvfs'. (NetBSD 3.0)])
|
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
# Ultrix
|
# Interix / BSD alike statvfs
|
||||||
AC_MSG_CHECKING([for getmnt function])
|
# the code is really interix specific, so make sure, we're on it.
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_getmnt],
|
case "$host" in
|
||||||
[AC_PREPROC_IFELSE([AC_LANG_SOURCE([[
|
*-interix*)
|
||||||
#include <sys/fs_types.h>
|
AC_CHECK_FUNCS([statvfs])
|
||||||
#include <sys/mount.h>]])],
|
if test $ac_cv_func_statvfs = yes; then
|
||||||
[fu_cv_sys_mounted_getmnt=yes],
|
ac_list_mounted_fs=found
|
||||||
[fu_cv_sys_mounted_getmnt=no])])
|
AC_DEFINE([MOUNTED_INTERIX_STATVFS], [1],
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_getmnt])
|
[Define if we are on interix, and ought to use statvfs plus
|
||||||
if test $fu_cv_sys_mounted_getmnt = yes; then
|
some special knowledge on where mounted file systems can be
|
||||||
ac_list_mounted_fs=found
|
found. (Interix)])
|
||||||
AC_DEFINE([MOUNTED_GETMNT], [1],
|
fi
|
||||||
[Define if there is a function named getmnt for reading the list of
|
;;
|
||||||
mounted file systems. (Ultrix)])
|
esac
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
if test -z "$ac_list_mounted_fs"; then
|
||||||
# BeOS
|
AC_MSG_ERROR([could not determine how to read list of mounted file systems])
|
||||||
AC_CHECK_FUNCS([next_dev fs_stat_dev])
|
# FIXME -- no need to abort building the whole package
|
||||||
AC_CHECK_HEADERS([fs_info.h])
|
# Can't build mountlist.c or anything that needs its functions
|
||||||
AC_MSG_CHECKING([for BEOS mounted file system support functions])
|
|
||||||
if test $ac_cv_header_fs_info_h = yes \
|
|
||||||
&& test $ac_cv_func_next_dev = yes \
|
|
||||||
&& test $ac_cv_func_fs_stat_dev = yes; then
|
|
||||||
fu_result=yes
|
|
||||||
else
|
|
||||||
fu_result=no
|
|
||||||
fi
|
fi
|
||||||
AC_MSG_RESULT([$fu_result])
|
|
||||||
if test $fu_result = yes; then
|
|
||||||
ac_list_mounted_fs=found
|
|
||||||
AC_DEFINE([MOUNTED_FS_STAT_DEV], [1],
|
|
||||||
[Define if there are functions named next_dev and fs_stat_dev for
|
|
||||||
reading the list of mounted file systems. (BeOS)])
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
AS_IF([test $ac_list_mounted_fs = found], [$1], [$2])
|
||||||
# SVR2
|
|
||||||
AC_MSG_CHECKING([whether it is possible to resort to fread on /etc/mnttab])
|
|
||||||
AC_CACHE_VAL([fu_cv_sys_mounted_fread],
|
|
||||||
[AC_PREPROC_IFELSE([AC_LANG_SOURCE([[#include <mnttab.h>]])],
|
|
||||||
[fu_cv_sys_mounted_fread=yes],
|
|
||||||
[fu_cv_sys_mounted_fread=no])])
|
|
||||||
AC_MSG_RESULT([$fu_cv_sys_mounted_fread])
|
|
||||||
if test $fu_cv_sys_mounted_fread = yes; then
|
|
||||||
ac_list_mounted_fs=found
|
|
||||||
AC_DEFINE([MOUNTED_FREAD], [1],
|
|
||||||
[Define if there is no specific function for reading the list of
|
|
||||||
mounted file systems. fread will be used to read /etc/mnttab.
|
|
||||||
(SVR2) ])
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
])
|
||||||
# Interix / BSD alike statvfs
|
|
||||||
# the code is really interix specific, so make sure, we're on it.
|
|
||||||
case "$host" in
|
|
||||||
*-interix*)
|
|
||||||
AC_CHECK_FUNCS([statvfs])
|
|
||||||
if test $ac_cv_func_statvfs = yes; then
|
|
||||||
ac_list_mounted_fs=found
|
|
||||||
AC_DEFINE([MOUNTED_INTERIX_STATVFS], [1],
|
|
||||||
[Define if we are on interix, and ought to use statvfs plus
|
|
||||||
some special knowledge on where mounted file systems can be
|
|
||||||
found. (Interix)])
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -z "$ac_list_mounted_fs"; then
|
|
||||||
AC_MSG_ERROR([could not determine how to read list of mounted file systems])
|
|
||||||
# FIXME -- no need to abort building the whole package
|
|
||||||
# Can't build mountlist.c or anything that needs its functions
|
|
||||||
fi
|
|
||||||
|
|
||||||
AS_IF([test $ac_list_mounted_fs = found], [$1], [$2])
|
|
||||||
|
|
||||||
])
|
|
||||||
|
@ -68,7 +68,7 @@ do_view_action() {
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
msxls)
|
msxls)
|
||||||
if xlHtml >/dev/null 2>&1; then
|
if xlhtml >/dev/null 2>&1; then
|
||||||
tmp=`mktemp -d ${TMPDIR:-/tmp}/%p.XXXXXX`
|
tmp=`mktemp -d ${TMPDIR:-/tmp}/%p.XXXXXX`
|
||||||
xlhtml -a "${MC_EXT_FILENAME}" > "$tmp/page.html"
|
xlhtml -a "${MC_EXT_FILENAME}" > "$tmp/page.html"
|
||||||
elinks -dump "$tmp/page.html"
|
elinks -dump "$tmp/page.html"
|
||||||
|
@ -70,7 +70,7 @@ include makefile.syntax
|
|||||||
file (CMakeLists.txt|.\*.cmake)$ CMake
|
file (CMakeLists.txt|.\*.cmake)$ CMake
|
||||||
include cmake.syntax
|
include cmake.syntax
|
||||||
|
|
||||||
file meson.build$ Meson\sBuild\sFile
|
file meson\\.build$ Meson\sBuild\sFile
|
||||||
include meson.syntax
|
include meson.syntax
|
||||||
|
|
||||||
file ..\*\\.(?i:pas|dpr|inc)$ Pascal\sProgram
|
file ..\*\\.(?i:pas|dpr|inc)$ Pascal\sProgram
|
||||||
@ -181,7 +181,7 @@ include m4.syntax
|
|||||||
file ..\*\\.(bat|cmd)$ DOS\sBatch
|
file ..\*\\.(bat|cmd)$ DOS\sBatch
|
||||||
include dos.syntax
|
include dos.syntax
|
||||||
|
|
||||||
file ..\*\\.(po|pot|pox)$ PO\sFile
|
file ..\*\\.po[tx]?$ PO\sFile
|
||||||
include po.syntax
|
include po.syntax
|
||||||
|
|
||||||
file ..\*\\.(?i:asm|s)$ ASM\sProgram
|
file ..\*\\.(?i:asm|s)$ ASM\sProgram
|
||||||
@ -277,7 +277,7 @@ include puppet.syntax
|
|||||||
file ..\*\\.(glsl|vert|frag|geom)$ GLSL\sProgram
|
file ..\*\\.(glsl|vert|frag|geom)$ GLSL\sProgram
|
||||||
include glsl.syntax
|
include glsl.syntax
|
||||||
|
|
||||||
file ..\*\\.(cu|cuh)$ CUDA\sProgram
|
file ..\*\\.cuh?$ CUDA\sProgram
|
||||||
include cuda.syntax
|
include cuda.syntax
|
||||||
|
|
||||||
file ..\*\\.cl$ OpenCL\sProgram
|
file ..\*\\.cl$ OpenCL\sProgram
|
||||||
|
2
po/az.po
2
po/az.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Azerbaijani (http://www.transifex.com/mc/mc/language/az/)\n"
|
"Language-Team: Azerbaijani (http://www.transifex.com/mc/mc/language/az/)\n"
|
||||||
|
2
po/be.po
2
po/be.po
@ -11,7 +11,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-05-21 16:57+0000\n"
|
"PO-Revision-Date: 2018-05-21 16:57+0000\n"
|
||||||
"Last-Translator: Zmicer Turok <zmicerturok@gmail.com>\n"
|
"Last-Translator: Zmicer Turok <zmicerturok@gmail.com>\n"
|
||||||
"Language-Team: Belarusian (http://www.transifex.com/mc/mc/language/be/)\n"
|
"Language-Team: Belarusian (http://www.transifex.com/mc/mc/language/be/)\n"
|
||||||
|
2
po/bg.po
2
po/bg.po
@ -11,7 +11,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Bulgarian (http://www.transifex.com/mc/mc/language/bg/)\n"
|
"Language-Team: Bulgarian (http://www.transifex.com/mc/mc/language/bg/)\n"
|
||||||
|
2
po/ca.po
2
po/ca.po
@ -16,7 +16,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-05-21 16:46+0000\n"
|
"PO-Revision-Date: 2018-05-21 16:46+0000\n"
|
||||||
"Last-Translator: Marc Tormo i Bochaca <mtbochaca@gmail.com>\n"
|
"Last-Translator: Marc Tormo i Bochaca <mtbochaca@gmail.com>\n"
|
||||||
"Language-Team: Catalan (http://www.transifex.com/mc/mc/language/ca/)\n"
|
"Language-Team: Catalan (http://www.transifex.com/mc/mc/language/ca/)\n"
|
||||||
|
2
po/cs.po
2
po/cs.po
@ -13,7 +13,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-05-22 14:53+0000\n"
|
"PO-Revision-Date: 2018-05-22 14:53+0000\n"
|
||||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>\n"
|
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>\n"
|
||||||
"Language-Team: Czech (http://www.transifex.com/mc/mc/language/cs/)\n"
|
"Language-Team: Czech (http://www.transifex.com/mc/mc/language/cs/)\n"
|
||||||
|
2
po/da.po
2
po/da.po
@ -13,7 +13,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-05-15 17:16+0000\n"
|
"PO-Revision-Date: 2018-05-15 17:16+0000\n"
|
||||||
"Last-Translator: Morten Bo Johansen <mortenbo@hotmail.com>\n"
|
"Last-Translator: Morten Bo Johansen <mortenbo@hotmail.com>\n"
|
||||||
"Language-Team: Danish (http://www.transifex.com/mc/mc/language/da/)\n"
|
"Language-Team: Danish (http://www.transifex.com/mc/mc/language/da/)\n"
|
||||||
|
2
po/de.po
2
po/de.po
@ -18,7 +18,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: German (http://www.transifex.com/mc/mc/language/de/)\n"
|
"Language-Team: German (http://www.transifex.com/mc/mc/language/de/)\n"
|
||||||
|
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2015-02-26 09:48+0000\n"
|
"PO-Revision-Date: 2015-02-26 09:48+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: German (Switzerland) (http://www.transifex.com/projects/p/mc/"
|
"Language-Team: German (Switzerland) (http://www.transifex.com/projects/p/mc/"
|
||||||
|
2
po/el.po
2
po/el.po
@ -12,7 +12,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Greek (http://www.transifex.com/mc/mc/language/el/)\n"
|
"Language-Team: Greek (http://www.transifex.com/mc/mc/language/el/)\n"
|
||||||
|
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: English (United Kingdom) (http://www.transifex.com/mc/mc/"
|
"Language-Team: English (United Kingdom) (http://www.transifex.com/mc/mc/"
|
||||||
|
2
po/eo.po
2
po/eo.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Esperanto (http://www.transifex.com/mc/mc/language/eo/)\n"
|
"Language-Team: Esperanto (http://www.transifex.com/mc/mc/language/eo/)\n"
|
||||||
|
2
po/es.po
2
po/es.po
@ -13,7 +13,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 20:11+0000\n"
|
"PO-Revision-Date: 2018-04-30 20:11+0000\n"
|
||||||
"Last-Translator: David Martin <dhmartina@yahoo.es>\n"
|
"Last-Translator: David Martin <dhmartina@yahoo.es>\n"
|
||||||
"Language-Team: Spanish (http://www.transifex.com/mc/mc/language/es/)\n"
|
"Language-Team: Spanish (http://www.transifex.com/mc/mc/language/es/)\n"
|
||||||
|
2
po/et.po
2
po/et.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Estonian (http://www.transifex.com/mc/mc/language/et/)\n"
|
"Language-Team: Estonian (http://www.transifex.com/mc/mc/language/et/)\n"
|
||||||
|
2
po/eu.po
2
po/eu.po
@ -9,7 +9,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-05-12 11:25+0000\n"
|
"PO-Revision-Date: 2018-05-12 11:25+0000\n"
|
||||||
"Last-Translator: Iñigo Salvador Azurmendi <xalba@euskalnet.net>\n"
|
"Last-Translator: Iñigo Salvador Azurmendi <xalba@euskalnet.net>\n"
|
||||||
"Language-Team: Basque (http://www.transifex.com/mc/mc/language/eu/)\n"
|
"Language-Team: Basque (http://www.transifex.com/mc/mc/language/eu/)\n"
|
||||||
|
2
po/fa.po
2
po/fa.po
@ -12,7 +12,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Persian (http://www.transifex.com/mc/mc/language/fa/)\n"
|
"Language-Team: Persian (http://www.transifex.com/mc/mc/language/fa/)\n"
|
||||||
|
2
po/fi.po
2
po/fi.po
@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Finnish (http://www.transifex.com/mc/mc/language/fi/)\n"
|
"Language-Team: Finnish (http://www.transifex.com/mc/mc/language/fi/)\n"
|
||||||
|
2
po/fr.po
2
po/fr.po
@ -17,7 +17,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-05-03 09:01+0000\n"
|
"PO-Revision-Date: 2018-05-03 09:01+0000\n"
|
||||||
"Last-Translator: David Prudhomme <david7.prudhomme@gmail.com>\n"
|
"Last-Translator: David Prudhomme <david7.prudhomme@gmail.com>\n"
|
||||||
"Language-Team: French (http://www.transifex.com/mc/mc/language/fr/)\n"
|
"Language-Team: French (http://www.transifex.com/mc/mc/language/fr/)\n"
|
||||||
|
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2015-02-26 09:48+0000\n"
|
"PO-Revision-Date: 2015-02-26 09:48+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: French (Canada) (http://www.transifex.com/projects/p/mc/"
|
"Language-Team: French (Canada) (http://www.transifex.com/projects/p/mc/"
|
||||||
|
2
po/gl.po
2
po/gl.po
@ -12,7 +12,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Galician (http://www.transifex.com/mc/mc/language/gl/)\n"
|
"Language-Team: Galician (http://www.transifex.com/mc/mc/language/gl/)\n"
|
||||||
|
2
po/hr.po
2
po/hr.po
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Croatian (http://www.transifex.com/mc/mc/language/hr/)\n"
|
"Language-Team: Croatian (http://www.transifex.com/mc/mc/language/hr/)\n"
|
||||||
|
2
po/hu.po
2
po/hu.po
@ -11,7 +11,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Hungarian (http://www.transifex.com/mc/mc/language/hu/)\n"
|
"Language-Team: Hungarian (http://www.transifex.com/mc/mc/language/hu/)\n"
|
||||||
|
2
po/ia.po
2
po/ia.po
@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Interlingua (http://www.transifex.com/mc/mc/language/ia/)\n"
|
"Language-Team: Interlingua (http://www.transifex.com/mc/mc/language/ia/)\n"
|
||||||
|
2
po/id.po
2
po/id.po
@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Indonesian (http://www.transifex.com/mc/mc/language/id/)\n"
|
"Language-Team: Indonesian (http://www.transifex.com/mc/mc/language/id/)\n"
|
||||||
|
2
po/it.po
2
po/it.po
@ -11,7 +11,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-09-10 08:38+0200\n"
|
"PO-Revision-Date: 2018-09-10 08:38+0200\n"
|
||||||
"Last-Translator: Marco Ciampa <ciampix@libero.it>\n"
|
"Last-Translator: Marco Ciampa <ciampix@libero.it>\n"
|
||||||
"Language-Team: Italian (http://www.transifex.com/projects/p/mc/language/"
|
"Language-Team: Italian (http://www.transifex.com/projects/p/mc/language/"
|
||||||
|
2
po/ja.po
2
po/ja.po
@ -11,7 +11,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Japanese (http://www.transifex.com/mc/mc/language/ja/)\n"
|
"Language-Team: Japanese (http://www.transifex.com/mc/mc/language/ja/)\n"
|
||||||
|
2
po/ka.po
2
po/ka.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Georgian (http://www.transifex.com/mc/mc/language/ka/)\n"
|
"Language-Team: Georgian (http://www.transifex.com/mc/mc/language/ka/)\n"
|
||||||
|
2
po/kk.po
2
po/kk.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Kazakh (http://www.transifex.com/mc/mc/language/kk/)\n"
|
"Language-Team: Kazakh (http://www.transifex.com/mc/mc/language/kk/)\n"
|
||||||
|
2
po/ko.po
2
po/ko.po
@ -9,7 +9,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Korean (http://www.transifex.com/mc/mc/language/ko/)\n"
|
"Language-Team: Korean (http://www.transifex.com/mc/mc/language/ko/)\n"
|
||||||
|
2
po/lt.po
2
po/lt.po
@ -12,7 +12,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Lithuanian (http://www.transifex.com/mc/mc/language/lt/)\n"
|
"Language-Team: Lithuanian (http://www.transifex.com/mc/mc/language/lt/)\n"
|
||||||
|
2
po/lv.po
2
po/lv.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Latvian (http://www.transifex.com/mc/mc/language/lv/)\n"
|
"Language-Team: Latvian (http://www.transifex.com/mc/mc/language/lv/)\n"
|
||||||
|
158
po/mc.pot
158
po/mc.pot
@ -5,9 +5,9 @@
|
|||||||
#
|
#
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: mc 4.8.21-69-g2c2e41c\n"
|
"Project-Id-Version: mc 4.8.21-103-g177c64c\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@ -653,7 +653,7 @@ msgstr ""
|
|||||||
#: src/editor/editcmd.c:422 src/editor/editcmd.c:584 src/editor/editcmd.c:1720
|
#: src/editor/editcmd.c:422 src/editor/editcmd.c:584 src/editor/editcmd.c:1720
|
||||||
#: src/editor/editcmd.c:3436 src/editor/editcmd.c:3465
|
#: src/editor/editcmd.c:3436 src/editor/editcmd.c:3465
|
||||||
#: src/editor/editcmd_dialogs.c:478 src/execute.c:135
|
#: src/editor/editcmd_dialogs.c:478 src/execute.c:135
|
||||||
#: src/filemanager/file.c:2384 src/filemanager/panel.c:4479 src/help.c:362
|
#: src/filemanager/file.c:2384 src/filemanager/panel.c:4487 src/help.c:362
|
||||||
#: src/main.c:401 src/subshell/common.c:432 src/subshell/common.c:1278
|
#: src/main.c:401 src/subshell/common.c:432 src/subshell/common.c:1278
|
||||||
#: src/viewer/actions_cmd.c:419
|
#: src/viewer/actions_cmd.c:419
|
||||||
msgid "Warning"
|
msgid "Warning"
|
||||||
@ -769,9 +769,9 @@ msgstr ""
|
|||||||
#: src/editor/editcmd.c:231 src/editor/editcmd.c:254 src/editor/editcmd.c:2851
|
#: src/editor/editcmd.c:231 src/editor/editcmd.c:254 src/editor/editcmd.c:2851
|
||||||
#: src/editor/editcmd.c:2857 src/filemanager/cmd.c:140
|
#: src/editor/editcmd.c:2857 src/filemanager/cmd.c:140
|
||||||
#: src/filemanager/file.c:968 src/filemanager/file.c:1948
|
#: src/filemanager/file.c:968 src/filemanager/file.c:1948
|
||||||
#: src/filemanager/filegui.c:432 src/filemanager/hotlist.c:1158
|
#: src/filemanager/filegui.c:426 src/filemanager/hotlist.c:1158
|
||||||
#: src/filemanager/hotlist.c:1175 src/filemanager/midnight.c:1026
|
#: src/filemanager/hotlist.c:1175 src/filemanager/midnight.c:1026
|
||||||
#: src/filemanager/midnight.c:1034 src/filemanager/panel.c:2820
|
#: src/filemanager/midnight.c:1034 src/filemanager/panel.c:2828
|
||||||
#: src/filemanager/tree.c:828 src/subshell/common.c:1280
|
#: src/filemanager/tree.c:828 src/subshell/common.c:1280
|
||||||
#: src/viewer/actions_cmd.c:619 src/viewer/actions_cmd.c:625
|
#: src/viewer/actions_cmd.c:619 src/viewer/actions_cmd.c:625
|
||||||
#: src/viewer/search.c:398
|
#: src/viewer/search.c:398
|
||||||
@ -781,10 +781,10 @@ msgstr ""
|
|||||||
#: lib/widget/listbox.c:325 src/diffviewer/ydiff.c:3089 src/editor/edit.c:359
|
#: lib/widget/listbox.c:325 src/diffviewer/ydiff.c:3089 src/editor/edit.c:359
|
||||||
#: src/editor/editcmd.c:231 src/editor/editcmd.c:2851 src/editor/editcmd.c:2857
|
#: src/editor/editcmd.c:231 src/editor/editcmd.c:2851 src/editor/editcmd.c:2857
|
||||||
#: src/filemanager/cmd.c:140 src/filemanager/file.c:968
|
#: src/filemanager/cmd.c:140 src/filemanager/file.c:968
|
||||||
#: src/filemanager/file.c:1948 src/filemanager/filegui.c:434
|
#: src/filemanager/file.c:1948 src/filemanager/filegui.c:428
|
||||||
#: src/filemanager/hotlist.c:1158 src/filemanager/hotlist.c:1175
|
#: src/filemanager/hotlist.c:1158 src/filemanager/hotlist.c:1175
|
||||||
#: src/filemanager/midnight.c:1026 src/filemanager/midnight.c:1034
|
#: src/filemanager/midnight.c:1026 src/filemanager/midnight.c:1034
|
||||||
#: src/filemanager/panel.c:2820 src/filemanager/tree.c:828
|
#: src/filemanager/panel.c:2828 src/filemanager/tree.c:828
|
||||||
#: src/subshell/common.c:1280 src/viewer/actions_cmd.c:619
|
#: src/subshell/common.c:1280 src/viewer/actions_cmd.c:619
|
||||||
#: src/viewer/actions_cmd.c:625 src/viewer/search.c:399
|
#: src/viewer/actions_cmd.c:625 src/viewer/search.c:399
|
||||||
msgid "&No"
|
msgid "&No"
|
||||||
@ -792,7 +792,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: lib/widget/quick.h:215 src/editor/editcmd.c:2717
|
#: lib/widget/quick.h:215 src/editor/editcmd.c:2717
|
||||||
#: src/editor/editcmd_dialogs.c:121 src/editor/editwidget.c:150
|
#: src/editor/editcmd_dialogs.c:121 src/editor/editwidget.c:150
|
||||||
#: src/filemanager/boxes.c:1243 src/filemanager/filegui.c:1252
|
#: src/filemanager/boxes.c:1243 src/filemanager/filegui.c:1246
|
||||||
#: src/filemanager/find.c:599 src/filemanager/layout.c:458
|
#: src/filemanager/find.c:599 src/filemanager/layout.c:458
|
||||||
#: src/subshell/common.c:435
|
#: src/subshell/common.c:435
|
||||||
msgid "&OK"
|
msgid "&OK"
|
||||||
@ -808,7 +808,7 @@ msgstr ""
|
|||||||
#: src/filemanager/achown.c:882 src/filemanager/chmod.c:117
|
#: src/filemanager/achown.c:882 src/filemanager/chmod.c:117
|
||||||
#: src/filemanager/chmod.c:411 src/filemanager/chown.c:88
|
#: src/filemanager/chmod.c:411 src/filemanager/chown.c:88
|
||||||
#: src/filemanager/chown.c:310 src/filemanager/cmd.c:1148
|
#: src/filemanager/chown.c:310 src/filemanager/cmd.c:1148
|
||||||
#: src/filemanager/filegui.c:1256 src/filemanager/find.c:599
|
#: src/filemanager/filegui.c:1250 src/filemanager/find.c:599
|
||||||
#: src/filemanager/hotlist.c:187 src/filemanager/hotlist.c:1014
|
#: src/filemanager/hotlist.c:187 src/filemanager/hotlist.c:1014
|
||||||
#: src/filemanager/hotlist.c:1076 src/filemanager/layout.c:459
|
#: src/filemanager/hotlist.c:1076 src/filemanager/layout.c:459
|
||||||
#: src/filemanager/panelize.c:140 src/learn.c:256 src/viewer/hex.c:430
|
#: src/filemanager/panelize.c:140 src/learn.c:256 src/viewer/hex.c:430
|
||||||
@ -837,7 +837,7 @@ msgstr ""
|
|||||||
#: lib/widget/wtools.c:691 src/filemanager/file.c:847
|
#: lib/widget/wtools.c:691 src/filemanager/file.c:847
|
||||||
#: src/filemanager/file.c:921 src/filemanager/file.c:923
|
#: src/filemanager/file.c:921 src/filemanager/file.c:923
|
||||||
#: src/filemanager/file.c:969 src/filemanager/file.c:3090
|
#: src/filemanager/file.c:969 src/filemanager/file.c:3090
|
||||||
#: src/filemanager/filegui.c:256 src/filemanager/filegui.c:450
|
#: src/filemanager/filegui.c:250 src/filemanager/filegui.c:444
|
||||||
msgid "&Abort"
|
msgid "&Abort"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -1047,23 +1047,23 @@ msgstr ""
|
|||||||
msgid "Two files are required to envoke the diffviewer."
|
msgid "Two files are required to envoke the diffviewer."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/background.c:177 src/background.c:251
|
#: src/background.c:179 src/background.c:251
|
||||||
msgid "Background protocol error"
|
msgid "Background protocol error"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/background.c:177
|
#: src/background.c:179
|
||||||
msgid "Reading failed"
|
msgid "Reading failed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/background.c:217 src/filemanager/file.c:844 src/filemanager/file.c:916
|
#: src/background.c:219 src/filemanager/file.c:844 src/filemanager/file.c:916
|
||||||
msgid "Background process error"
|
msgid "Background process error"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/background.c:229 src/background.c:292
|
#: src/background.c:232 src/background.c:283
|
||||||
msgid "Unknown error in child"
|
msgid "Unknown error in child"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/background.c:237
|
#: src/background.c:240
|
||||||
msgid "Child died unexpectedly"
|
msgid "Child died unexpectedly"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -1701,14 +1701,14 @@ msgid "&Replace"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/editor/editcmd_dialogs.c:280 src/filemanager/file.c:968
|
#: src/editor/editcmd_dialogs.c:280 src/filemanager/file.c:968
|
||||||
#: src/filemanager/filegui.c:442
|
#: src/filemanager/filegui.c:436
|
||||||
msgid "A&ll"
|
msgid "A&ll"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/editor/editcmd_dialogs.c:281 src/editor/spell_dialogs.c:97
|
#: src/editor/editcmd_dialogs.c:281 src/editor/spell_dialogs.c:97
|
||||||
#: src/filemanager/file.c:847 src/filemanager/file.c:920
|
#: src/filemanager/file.c:847 src/filemanager/file.c:920
|
||||||
#: src/filemanager/file.c:923 src/filemanager/file.c:3091
|
#: src/filemanager/file.c:923 src/filemanager/file.c:3091
|
||||||
#: src/filemanager/filegui.c:253
|
#: src/filemanager/filegui.c:247
|
||||||
msgid "&Skip"
|
msgid "&Skip"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -2943,7 +2943,7 @@ msgid "Files tagged, want to cd?"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/cmd.c:147 src/filemanager/cmd.c:1131
|
#: src/filemanager/cmd.c:147 src/filemanager/cmd.c:1131
|
||||||
#: src/filemanager/panel.c:2796 src/filemanager/panel.c:3396
|
#: src/filemanager/panel.c:2804 src/filemanager/panel.c:3404
|
||||||
msgid "Cannot change directory"
|
msgid "Cannot change directory"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -2974,7 +2974,7 @@ msgstr ""
|
|||||||
msgid "symlink: %s"
|
msgid "symlink: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/cmd.c:464 src/filemanager/panel.c:4734
|
#: src/filemanager/cmd.c:464 src/filemanager/panel.c:4732
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Cannot chdir to \"%s\""
|
msgid "Cannot chdir to \"%s\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -3133,7 +3133,7 @@ msgstr ""
|
|||||||
msgid "Cannot execute commands on non-local filesystems"
|
msgid "Cannot execute commands on non-local filesystems"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/command.c:456 src/filemanager/panel.c:3687
|
#: src/filemanager/command.c:456 src/filemanager/panel.c:3695
|
||||||
#: src/filemanager/tree.c:588
|
#: src/filemanager/tree.c:588
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -3141,7 +3141,7 @@ msgid ""
|
|||||||
"%s"
|
"%s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/dir.c:638 src/filemanager/dir.c:699
|
#: src/filemanager/dir.c:647 src/filemanager/dir.c:708
|
||||||
msgid "Cannot read directory contents"
|
msgid "Cannot read directory contents"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3315,7 +3315,7 @@ msgid ""
|
|||||||
"Delete it recursively?"
|
"Delete it recursively?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/file.c:969 src/filemanager/filegui.c:446
|
#: src/filemanager/file.c:969 src/filemanager/filegui.c:440
|
||||||
msgid "Non&e"
|
msgid "Non&e"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3536,167 +3536,167 @@ msgstr ""
|
|||||||
msgid "Sorry, I could not put the job in background"
|
msgid "Sorry, I could not put the job in background"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:254 src/filemanager/find.c:192
|
#: src/filemanager/filegui.c:248 src/filemanager/find.c:192
|
||||||
msgid "S&uspend"
|
msgid "S&uspend"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:255 src/filemanager/find.c:193
|
#: src/filemanager/filegui.c:249 src/filemanager/find.c:193
|
||||||
msgid "Con&tinue"
|
msgid "Con&tinue"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:344
|
#: src/filemanager/filegui.c:338
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%d:%02d.%02d"
|
msgid "%d:%02d.%02d"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:361
|
#: src/filemanager/filegui.c:355
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "ETA %s"
|
msgid "ETA %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:371
|
#: src/filemanager/filegui.c:365
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%.2f MB/s"
|
msgid "%.2f MB/s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:375
|
#: src/filemanager/filegui.c:369
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%.2f KB/s"
|
msgid "%.2f KB/s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:379
|
#: src/filemanager/filegui.c:373
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "%ld B/s"
|
msgid "%ld B/s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:422
|
#: src/filemanager/filegui.c:416
|
||||||
msgid "Target file already exists!"
|
msgid "Target file already exists!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:426
|
#: src/filemanager/filegui.c:420
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "New : %s, size %s"
|
msgid "New : %s, size %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:428
|
#: src/filemanager/filegui.c:422
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Existing: %s, size %s"
|
msgid "Existing: %s, size %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:430
|
#: src/filemanager/filegui.c:424
|
||||||
msgid "Overwrite this target?"
|
msgid "Overwrite this target?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:436 src/filemanager/hotlist.c:195
|
#: src/filemanager/filegui.c:430 src/filemanager/hotlist.c:195
|
||||||
msgid "A&ppend"
|
msgid "A&ppend"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:438
|
#: src/filemanager/filegui.c:432
|
||||||
msgid "&Reget"
|
msgid "&Reget"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:440
|
#: src/filemanager/filegui.c:434
|
||||||
msgid "Overwrite all targets?"
|
msgid "Overwrite all targets?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:444
|
#: src/filemanager/filegui.c:438
|
||||||
msgid "&Update"
|
msgid "&Update"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:448
|
#: src/filemanager/filegui.c:442
|
||||||
msgid "If &size differs"
|
msgid "If &size differs"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:471
|
#: src/filemanager/filegui.c:465
|
||||||
msgid "File exists"
|
msgid "File exists"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:473
|
#: src/filemanager/filegui.c:467
|
||||||
msgid "Background process: File exists"
|
msgid "Background process: File exists"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:940
|
#: src/filemanager/filegui.c:934
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Files processed: %zu/%zu"
|
msgid "Files processed: %zu/%zu"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:942
|
#: src/filemanager/filegui.c:936
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Files processed: %zu"
|
msgid "Files processed: %zu"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:989
|
#: src/filemanager/filegui.c:983
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Time: %s %s"
|
msgid "Time: %s %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:994
|
#: src/filemanager/filegui.c:988
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Time: %s %s (%s)"
|
msgid "Time: %s %s (%s)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1001
|
#: src/filemanager/filegui.c:995
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Time: %s"
|
msgid "Time: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1005
|
#: src/filemanager/filegui.c:999
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Time: %s (%s)"
|
msgid "Time: %s (%s)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1016
|
#: src/filemanager/filegui.c:1010
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid " Total: %s "
|
msgid " Total: %s "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1020
|
#: src/filemanager/filegui.c:1014
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid " Total: %s/%s "
|
msgid " Total: %s/%s "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1046
|
#: src/filemanager/filegui.c:1040
|
||||||
msgid "Source"
|
msgid "Source"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1071
|
#: src/filemanager/filegui.c:1065
|
||||||
msgid "Target"
|
msgid "Target"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1095
|
#: src/filemanager/filegui.c:1089
|
||||||
msgid "Deleting"
|
msgid "Deleting"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1239 src/filemanager/find.c:581
|
#: src/filemanager/filegui.c:1233 src/filemanager/find.c:581
|
||||||
#: src/filemanager/panel.c:2531
|
#: src/filemanager/panel.c:2539
|
||||||
msgid "&Using shell patterns"
|
msgid "&Using shell patterns"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1241
|
#: src/filemanager/filegui.c:1235
|
||||||
msgid "to:"
|
msgid "to:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1245
|
#: src/filemanager/filegui.c:1239
|
||||||
msgid "Follow &links"
|
msgid "Follow &links"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1246
|
#: src/filemanager/filegui.c:1240
|
||||||
msgid "Preserve &attributes"
|
msgid "Preserve &attributes"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1248
|
#: src/filemanager/filegui.c:1242
|
||||||
msgid "Di&ve into subdir if exists"
|
msgid "Di&ve into subdir if exists"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1249
|
#: src/filemanager/filegui.c:1243
|
||||||
msgid "&Stable symlinks"
|
msgid "&Stable symlinks"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1254
|
#: src/filemanager/filegui.c:1248
|
||||||
msgid "&Background"
|
msgid "&Background"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/filegui.c:1309
|
#: src/filemanager/filegui.c:1303
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Invalid source pattern '%s'"
|
msgid "Invalid source pattern '%s'"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4322,7 +4322,7 @@ msgstr[0] ""
|
|||||||
msgstr[1] ""
|
msgstr[1] ""
|
||||||
|
|
||||||
#: src/filemanager/midnight.c:1026 src/filemanager/midnight.c:1032
|
#: src/filemanager/midnight.c:1026 src/filemanager/midnight.c:1032
|
||||||
#: src/filemanager/panel.c:2819
|
#: src/filemanager/panel.c:2827
|
||||||
msgid "The Midnight Commander"
|
msgid "The Midnight Commander"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -4362,7 +4362,7 @@ msgstr ""
|
|||||||
msgid "ButtonBar|Mkdir"
|
msgid "ButtonBar|Mkdir"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/mountlist.c:986
|
#: src/filemanager/mountlist.c:881
|
||||||
msgid "Memory exhausted!"
|
msgid "Memory exhausted!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -4515,31 +4515,31 @@ msgstr[1] ""
|
|||||||
msgid "Panelize"
|
msgid "Panelize"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panel.c:1816
|
#: src/filemanager/panel.c:1824
|
||||||
msgid "Unknown tag on display format:"
|
msgid "Unknown tag on display format:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panel.c:2530
|
#: src/filemanager/panel.c:2538
|
||||||
msgid "&Files only"
|
msgid "&Files only"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panel.c:2533
|
#: src/filemanager/panel.c:2541
|
||||||
msgid "&Case sensitive"
|
msgid "&Case sensitive"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panel.c:2588
|
#: src/filemanager/panel.c:2596
|
||||||
msgid "Select"
|
msgid "Select"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panel.c:2596
|
#: src/filemanager/panel.c:2604
|
||||||
msgid "Unselect"
|
msgid "Unselect"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panel.c:2820
|
#: src/filemanager/panel.c:2828
|
||||||
msgid "Do you really want to execute?"
|
msgid "Do you really want to execute?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panel.c:4480
|
#: src/filemanager/panel.c:4488
|
||||||
msgid "User supplied format looks invalid, reverting to default."
|
msgid "User supplied format looks invalid, reverting to default."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -4551,7 +4551,7 @@ msgstr ""
|
|||||||
msgid "External panelize"
|
msgid "External panelize"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panelize.c:180 src/filemanager/panelize.c:277
|
#: src/filemanager/panelize.c:180 src/filemanager/panelize.c:276
|
||||||
#: src/filemanager/panelize.c:589 src/filemanager/panelize.c:643
|
#: src/filemanager/panelize.c:589 src/filemanager/panelize.c:643
|
||||||
msgid "Other command"
|
msgid "Other command"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4560,15 +4560,15 @@ msgstr ""
|
|||||||
msgid "Command"
|
msgid "Command"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panelize.c:262
|
#: src/filemanager/panelize.c:261
|
||||||
msgid "Add to external panelize"
|
msgid "Add to external panelize"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panelize.c:263
|
#: src/filemanager/panelize.c:262
|
||||||
msgid "Enter command label:"
|
msgid "Enter command label:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/filemanager/panelize.c:316
|
#: src/filemanager/panelize.c:309
|
||||||
msgid "Cannot invoke command."
|
msgid "Cannot invoke command."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -5271,25 +5271,25 @@ msgstr ""
|
|||||||
msgid "sftp: connection to server failed: %s"
|
msgid "sftp: connection to server failed: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/vfs/sftpfs/connection.c:277
|
#: src/vfs/sftpfs/connection.c:283
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "sftp: Enter passphrase for %s "
|
msgid "sftp: Enter passphrase for %s "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/vfs/sftpfs/connection.c:282
|
#: src/vfs/sftpfs/connection.c:288
|
||||||
msgid "sftp: Passphrase is empty."
|
msgid "sftp: Passphrase is empty."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/vfs/sftpfs/connection.c:328
|
#: src/vfs/sftpfs/connection.c:334
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "sftp: Enter password for %s "
|
msgid "sftp: Enter password for %s "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/vfs/sftpfs/connection.c:333
|
#: src/vfs/sftpfs/connection.c:339
|
||||||
msgid "sftp: Password is empty."
|
msgid "sftp: Password is empty."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/vfs/sftpfs/connection.c:398
|
#: src/vfs/sftpfs/connection.c:404
|
||||||
msgid "sftp: Failure establishing SSH session"
|
msgid "sftp: Failure establishing SSH session"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -5557,7 +5557,7 @@ msgid ""
|
|||||||
"%s"
|
"%s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/viewer/lib.c:394 src/viewer/lib.c:396
|
#: src/viewer/lib.c:393 src/viewer/lib.c:395
|
||||||
msgid "View: "
|
msgid "View: "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
2
po/mn.po
2
po/mn.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Mongolian (http://www.transifex.com/mc/mc/language/mn/)\n"
|
"Language-Team: Mongolian (http://www.transifex.com/mc/mc/language/mn/)\n"
|
||||||
|
2
po/nb.po
2
po/nb.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Norwegian Bokmål (http://www.transifex.com/mc/mc/language/"
|
"Language-Team: Norwegian Bokmål (http://www.transifex.com/mc/mc/language/"
|
||||||
|
2
po/nl.po
2
po/nl.po
@ -14,7 +14,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Dutch (http://www.transifex.com/mc/mc/language/nl/)\n"
|
"Language-Team: Dutch (http://www.transifex.com/mc/mc/language/nl/)\n"
|
||||||
|
2
po/pl.po
2
po/pl.po
@ -9,7 +9,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-05-01 15:44+0000\n"
|
"PO-Revision-Date: 2018-05-01 15:44+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Polish (http://www.transifex.com/mc/mc/language/pl/)\n"
|
"Language-Team: Polish (http://www.transifex.com/mc/mc/language/pl/)\n"
|
||||||
|
2
po/pt.po
2
po/pt.po
@ -11,7 +11,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 22:38+0000\n"
|
"PO-Revision-Date: 2018-04-30 22:38+0000\n"
|
||||||
"Last-Translator: Gilberto Jorge <gmj125@gmail.com>\n"
|
"Last-Translator: Gilberto Jorge <gmj125@gmail.com>\n"
|
||||||
"Language-Team: Portuguese (http://www.transifex.com/mc/mc/language/pt/)\n"
|
"Language-Team: Portuguese (http://www.transifex.com/mc/mc/language/pt/)\n"
|
||||||
|
@ -13,7 +13,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/mc/mc/language/"
|
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/mc/mc/language/"
|
||||||
|
2
po/ro.po
2
po/ro.po
@ -15,7 +15,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Romanian (http://www.transifex.com/mc/mc/language/ro/)\n"
|
"Language-Team: Romanian (http://www.transifex.com/mc/mc/language/ro/)\n"
|
||||||
|
5
po/ru.po
5
po/ru.po
@ -21,7 +21,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Russian (http://www.transifex.com/mc/mc/language/ru/)\n"
|
"Language-Team: Russian (http://www.transifex.com/mc/mc/language/ru/)\n"
|
||||||
@ -2550,8 +2550,7 @@ msgstr ""
|
|||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid "Cannot create target hardlink \"%s\""
|
msgid "Cannot create target hardlink \"%s\""
|
||||||
msgstr ""
|
msgstr "Невозможно создать целевую ссылку \"%s\""
|
||||||
"Невозможно создать целевую ссылку \"%s\""
|
|
||||||
|
|
||||||
#, c-format
|
#, c-format
|
||||||
msgid ""
|
msgid ""
|
||||||
|
2
po/sk.po
2
po/sk.po
@ -14,7 +14,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Slovak (http://www.transifex.com/mc/mc/language/sk/)\n"
|
"Language-Team: Slovak (http://www.transifex.com/mc/mc/language/sk/)\n"
|
||||||
|
2
po/sl.po
2
po/sl.po
@ -10,7 +10,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Slovenian (http://www.transifex.com/mc/mc/language/sl/)\n"
|
"Language-Team: Slovenian (http://www.transifex.com/mc/mc/language/sl/)\n"
|
||||||
|
2
po/sr.po
2
po/sr.po
@ -9,7 +9,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Serbian (http://www.transifex.com/mc/mc/language/sr/)\n"
|
"Language-Team: Serbian (http://www.transifex.com/mc/mc/language/sr/)\n"
|
||||||
|
2
po/sv.po
2
po/sv.po
@ -14,7 +14,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Swedish (http://www.transifex.com/mc/mc/language/sv/)\n"
|
"Language-Team: Swedish (http://www.transifex.com/mc/mc/language/sv/)\n"
|
||||||
|
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Silesian (http://www.transifex.com/mc/mc/language/szl/)\n"
|
"Language-Team: Silesian (http://www.transifex.com/mc/mc/language/szl/)\n"
|
||||||
|
2
po/ta.po
2
po/ta.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Tamil (http://www.transifex.com/mc/mc/language/ta/)\n"
|
"Language-Team: Tamil (http://www.transifex.com/mc/mc/language/ta/)\n"
|
||||||
|
2
po/te.po
2
po/te.po
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Telugu (http://www.transifex.com/mc/mc/language/te/)\n"
|
"Language-Team: Telugu (http://www.transifex.com/mc/mc/language/te/)\n"
|
||||||
|
2
po/tr.po
2
po/tr.po
@ -13,7 +13,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Turkish (http://www.transifex.com/mc/mc/language/tr/)\n"
|
"Language-Team: Turkish (http://www.transifex.com/mc/mc/language/tr/)\n"
|
||||||
|
2
po/uk.po
2
po/uk.po
@ -12,7 +12,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Ukrainian (http://www.transifex.com/mc/mc/language/uk/)\n"
|
"Language-Team: Ukrainian (http://www.transifex.com/mc/mc/language/uk/)\n"
|
||||||
|
2
po/vi.po
2
po/vi.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Vietnamese (http://www.transifex.com/mc/mc/language/vi/)\n"
|
"Language-Team: Vietnamese (http://www.transifex.com/mc/mc/language/vi/)\n"
|
||||||
|
2
po/wa.po
2
po/wa.po
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Walloon (http://www.transifex.com/mc/mc/language/wa/)\n"
|
"Language-Team: Walloon (http://www.transifex.com/mc/mc/language/wa/)\n"
|
||||||
|
@ -17,7 +17,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-05-10 15:41+0000\n"
|
"PO-Revision-Date: 2018-05-10 15:41+0000\n"
|
||||||
"Last-Translator: Mingcong Bai <jeffbai@aosc.xyz>\n"
|
"Last-Translator: Mingcong Bai <jeffbai@aosc.xyz>\n"
|
||||||
"Language-Team: Chinese (China) (http://www.transifex.com/mc/mc/language/"
|
"Language-Team: Chinese (China) (http://www.transifex.com/mc/mc/language/"
|
||||||
|
@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Midnight Commander\n"
|
"Project-Id-Version: Midnight Commander\n"
|
||||||
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
"Report-Msgid-Bugs-To: http://www.midnight-commander.org/\n"
|
||||||
"POT-Creation-Date: 2018-10-20 18:37+0300\n"
|
"POT-Creation-Date: 2018-11-24 15:01+0300\n"
|
||||||
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
"PO-Revision-Date: 2018-04-30 12:37+0000\n"
|
||||||
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
"Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
|
||||||
"Language-Team: Chinese (Taiwan) (http://www.transifex.com/mc/mc/language/"
|
"Language-Team: Chinese (Taiwan) (http://www.transifex.com/mc/mc/language/"
|
||||||
|
@ -103,29 +103,31 @@ register_task_running (file_op_context_t * ctx, pid_t pid, int fd, int to_child,
|
|||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
|
|
||||||
static int
|
static int
|
||||||
destroy_task_and_return_fd (pid_t pid)
|
destroy_task (pid_t pid)
|
||||||
{
|
{
|
||||||
TaskList *p = task_list;
|
TaskList *p = task_list;
|
||||||
TaskList *prev = 0;
|
TaskList *prev = NULL;
|
||||||
|
|
||||||
while (p)
|
while (p != NULL)
|
||||||
{
|
{
|
||||||
if (p->pid == pid)
|
if (p->pid == pid)
|
||||||
{
|
{
|
||||||
if (prev)
|
int fd = p->fd;
|
||||||
|
|
||||||
|
if (prev != NULL)
|
||||||
prev->next = p->next;
|
prev->next = p->next;
|
||||||
else
|
else
|
||||||
task_list = p->next;
|
task_list = p->next;
|
||||||
g_free (p->info);
|
g_free (p->info);
|
||||||
g_free (p);
|
g_free (p);
|
||||||
return p->fd;
|
return fd;
|
||||||
}
|
}
|
||||||
prev = p;
|
prev = p;
|
||||||
p = p->next;
|
p = p->next;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* pid not found */
|
/* pid not found */
|
||||||
return -1;
|
return (-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
@ -222,7 +224,8 @@ background_attention (int fd, void *closure)
|
|||||||
if (bytes == -1 || (size_t) bytes < (sizeof (routine)))
|
if (bytes == -1 || (size_t) bytes < (sizeof (routine)))
|
||||||
{
|
{
|
||||||
unregister_task_running (ctx->pid, fd);
|
unregister_task_running (ctx->pid, fd);
|
||||||
if (!waitpid (ctx->pid, &status, WNOHANG))
|
|
||||||
|
if (waitpid (ctx->pid, &status, WNOHANG) == 0)
|
||||||
{
|
{
|
||||||
/* the process is still running, but it misbehaves - kill it */
|
/* the process is still running, but it misbehaves - kill it */
|
||||||
kill (ctx->pid, SIGTERM);
|
kill (ctx->pid, SIGTERM);
|
||||||
@ -239,53 +242,41 @@ background_attention (int fd, void *closure)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((read (fd, &argc, sizeof (argc)) != sizeof (argc)) ||
|
if (read (fd, &argc, sizeof (argc)) != sizeof (argc) ||
|
||||||
(read (fd, &type, sizeof (type)) != sizeof (type)) ||
|
read (fd, &type, sizeof (type)) != sizeof (type) ||
|
||||||
(read (fd, &have_ctx, sizeof (have_ctx)) != sizeof (have_ctx)))
|
read (fd, &have_ctx, sizeof (have_ctx)) != sizeof (have_ctx))
|
||||||
{
|
|
||||||
return reading_failed (-1, data);
|
return reading_failed (-1, data);
|
||||||
}
|
|
||||||
|
|
||||||
if (argc > MAXCALLARGS)
|
if (argc > MAXCALLARGS)
|
||||||
{
|
|
||||||
message (D_ERROR, _("Background protocol error"), "%s",
|
message (D_ERROR, _("Background protocol error"), "%s",
|
||||||
_("Background process sent us a request for more arguments\n"
|
_("Background process sent us a request for more arguments\n"
|
||||||
"than we can handle."));
|
"than we can handle."));
|
||||||
}
|
|
||||||
|
|
||||||
if (have_ctx)
|
if (have_ctx != 0 && read (fd, ctx, sizeof (*ctx)) != sizeof (*ctx))
|
||||||
{
|
return reading_failed (-1, data);
|
||||||
if (read (fd, ctx, sizeof (*ctx)) != sizeof (*ctx))
|
|
||||||
{
|
|
||||||
return reading_failed (-1, data);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for (i = 0; i < argc; i++)
|
for (i = 0; i < argc; i++)
|
||||||
{
|
{
|
||||||
int size;
|
int size;
|
||||||
|
|
||||||
if (read (fd, &size, sizeof (size)) != sizeof (size))
|
if (read (fd, &size, sizeof (size)) != sizeof (size))
|
||||||
{
|
|
||||||
return reading_failed (i - 1, data);
|
return reading_failed (i - 1, data);
|
||||||
}
|
|
||||||
data[i] = g_malloc (size + 1);
|
data[i] = g_malloc (size + 1);
|
||||||
|
|
||||||
if (read (fd, data[i], size) != size)
|
if (read (fd, data[i], size) != size)
|
||||||
{
|
|
||||||
return reading_failed (i, data);
|
return reading_failed (i, data);
|
||||||
}
|
|
||||||
data[i][size] = 0; /* NULL terminate the blocks (they could be strings) */
|
data[i][size] = '\0'; /* NULL terminate the blocks (they could be strings) */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Find child task info by descriptor */
|
/* Find child task info by descriptor */
|
||||||
/* Find before call, because process can destroy self after */
|
/* Find before call, because process can destroy self after */
|
||||||
for (p = task_list; p; p = p->next)
|
for (p = task_list; p != NULL; p = p->next)
|
||||||
{
|
|
||||||
if (p->fd == fd)
|
if (p->fd == fd)
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
|
|
||||||
if (p)
|
if (p != NULL)
|
||||||
to_child_fd = p->to_child_fd;
|
to_child_fd = p->to_child_fd;
|
||||||
|
|
||||||
if (to_child_fd == -1)
|
if (to_child_fd == -1)
|
||||||
@ -296,7 +287,7 @@ background_attention (int fd, void *closure)
|
|||||||
{
|
{
|
||||||
int result = 0;
|
int result = 0;
|
||||||
|
|
||||||
if (!have_ctx)
|
if (have_ctx == 0)
|
||||||
switch (argc)
|
switch (argc)
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
@ -342,7 +333,7 @@ background_attention (int fd, void *closure)
|
|||||||
|
|
||||||
/* Send the result code and the value for shared variables */
|
/* Send the result code and the value for shared variables */
|
||||||
ret = write (to_child_fd, &result, sizeof (result));
|
ret = write (to_child_fd, &result, sizeof (result));
|
||||||
if (have_ctx && to_child_fd != -1)
|
if (have_ctx != 0 && to_child_fd != -1)
|
||||||
ret = write (to_child_fd, ctx, sizeof (*ctx));
|
ret = write (to_child_fd, ctx, sizeof (*ctx));
|
||||||
}
|
}
|
||||||
else if (type == Return_String)
|
else if (type == Return_String)
|
||||||
@ -373,7 +364,8 @@ background_attention (int fd, void *closure)
|
|||||||
default:
|
default:
|
||||||
g_assert_not_reached ();
|
g_assert_not_reached ();
|
||||||
}
|
}
|
||||||
if (resstr)
|
|
||||||
|
if (resstr != NULL)
|
||||||
{
|
{
|
||||||
len = strlen (resstr);
|
len = strlen (resstr);
|
||||||
ret = write (to_child_fd, &len, sizeof (len));
|
ret = write (to_child_fd, &len, sizeof (len));
|
||||||
@ -387,15 +379,17 @@ background_attention (int fd, void *closure)
|
|||||||
ret = write (to_child_fd, &len, sizeof (len));
|
ret = write (to_child_fd, &len, sizeof (len));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < argc; i++)
|
for (i = 0; i < argc; i++)
|
||||||
g_free (data[i]);
|
g_free (data[i]);
|
||||||
|
|
||||||
repaint_screen ();
|
repaint_screen ();
|
||||||
|
|
||||||
(void) ret;
|
(void) ret;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
/* }}} */
|
/* }}} */
|
||||||
|
|
||||||
@ -412,15 +406,15 @@ parent_call_header (void *routine, int argc, enum ReturnType type, file_op_conte
|
|||||||
int have_ctx;
|
int have_ctx;
|
||||||
ssize_t ret;
|
ssize_t ret;
|
||||||
|
|
||||||
have_ctx = (ctx != NULL);
|
have_ctx = ctx != NULL ? 1 : 0;
|
||||||
|
|
||||||
ret = write (parent_fd, &routine, sizeof (routine));
|
ret = write (parent_fd, &routine, sizeof (routine));
|
||||||
ret = write (parent_fd, &argc, sizeof (argc));
|
ret = write (parent_fd, &argc, sizeof (argc));
|
||||||
ret = write (parent_fd, &type, sizeof (type));
|
ret = write (parent_fd, &type, sizeof (type));
|
||||||
ret = write (parent_fd, &have_ctx, sizeof (have_ctx));
|
ret = write (parent_fd, &have_ctx, sizeof (have_ctx));
|
||||||
|
if (have_ctx != 0)
|
||||||
if (have_ctx)
|
|
||||||
ret = write (parent_fd, ctx, sizeof (*ctx));
|
ret = write (parent_fd, ctx, sizeof (*ctx));
|
||||||
|
|
||||||
(void) ret;
|
(void) ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -446,10 +440,11 @@ parent_va_call (void *routine, gpointer data, int argc, va_list ap)
|
|||||||
}
|
}
|
||||||
|
|
||||||
ret = read (from_parent_fd, &i, sizeof (i));
|
ret = read (from_parent_fd, &i, sizeof (i));
|
||||||
if (ctx)
|
if (ctx != NULL)
|
||||||
ret = read (from_parent_fd, ctx, sizeof (*ctx));
|
ret = read (from_parent_fd, ctx, sizeof (*ctx));
|
||||||
|
|
||||||
(void) ret;
|
(void) ret;
|
||||||
|
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -469,24 +464,21 @@ parent_va_call_string (void *routine, int argc, va_list ap)
|
|||||||
|
|
||||||
len = va_arg (ap, int);
|
len = va_arg (ap, int);
|
||||||
value = va_arg (ap, void *);
|
value = va_arg (ap, void *);
|
||||||
if ((write (parent_fd, &len, sizeof (len)) != sizeof (len)) ||
|
if (write (parent_fd, &len, sizeof (len)) != sizeof (len) ||
|
||||||
(write (parent_fd, value, len) != len))
|
write (parent_fd, value, len) != len)
|
||||||
{
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (read (from_parent_fd, &i, sizeof (i)) != sizeof (i))
|
if (read (from_parent_fd, &i, sizeof (i)) != sizeof (i) || i == 0)
|
||||||
return NULL;
|
|
||||||
if (!i)
|
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
str = g_malloc (i + 1);
|
str = g_malloc (i + 1);
|
||||||
if (read (from_parent_fd, str, i) != i)
|
if (read (from_parent_fd, str, i) != i)
|
||||||
{
|
{
|
||||||
g_free (str);
|
g_free (str);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
str[i] = 0;
|
str[i] = '\0';
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -497,7 +489,7 @@ parent_va_call_string (void *routine, int argc, va_list ap)
|
|||||||
void
|
void
|
||||||
unregister_task_running (pid_t pid, int fd)
|
unregister_task_running (pid_t pid, int fd)
|
||||||
{
|
{
|
||||||
destroy_task_and_return_fd (pid);
|
destroy_task (pid);
|
||||||
delete_select_channel (fd);
|
delete_select_channel (fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -506,12 +498,13 @@ unregister_task_running (pid_t pid, int fd)
|
|||||||
void
|
void
|
||||||
unregister_task_with_pid (pid_t pid)
|
unregister_task_with_pid (pid_t pid)
|
||||||
{
|
{
|
||||||
int fd = destroy_task_and_return_fd (pid);
|
int fd;
|
||||||
|
|
||||||
|
fd = destroy_task (pid);
|
||||||
if (fd != -1)
|
if (fd != -1)
|
||||||
delete_select_channel (fd);
|
delete_select_channel (fd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
/**
|
/**
|
||||||
* Try to make the Midnight Commander a background job
|
* Try to make the Midnight Commander a background job
|
||||||
@ -529,10 +522,10 @@ do_background (file_op_context_t * ctx, char *info)
|
|||||||
pid_t pid;
|
pid_t pid;
|
||||||
|
|
||||||
if (pipe (comm) == -1)
|
if (pipe (comm) == -1)
|
||||||
return -1;
|
return (-1);
|
||||||
|
|
||||||
if (pipe (back_comm) == -1)
|
if (pipe (back_comm) == -1)
|
||||||
return -1;
|
return (-1);
|
||||||
|
|
||||||
pid = fork ();
|
pid = fork ();
|
||||||
if (pid == -1)
|
if (pid == -1)
|
||||||
@ -544,7 +537,8 @@ do_background (file_op_context_t * ctx, char *info)
|
|||||||
(void) close (back_comm[0]);
|
(void) close (back_comm[0]);
|
||||||
(void) close (back_comm[1]);
|
(void) close (back_comm[1]);
|
||||||
errno = saved_errno;
|
errno = saved_errno;
|
||||||
return -1;
|
|
||||||
|
return (-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pid == 0)
|
if (pid == 0)
|
||||||
|
@ -218,18 +218,7 @@ alloc_dir_copy (int size)
|
|||||||
if (dir_copy.size < size)
|
if (dir_copy.size < size)
|
||||||
{
|
{
|
||||||
if (dir_copy.list != NULL)
|
if (dir_copy.list != NULL)
|
||||||
{
|
dir_list_free_list (&dir_copy);
|
||||||
int i;
|
|
||||||
|
|
||||||
for (i = 0; i < dir_copy.len; i++)
|
|
||||||
{
|
|
||||||
file_entry_t *fentry;
|
|
||||||
|
|
||||||
fentry = &(dir_copy.list)[i];
|
|
||||||
g_free (fentry->fname);
|
|
||||||
}
|
|
||||||
g_free (dir_copy.list);
|
|
||||||
}
|
|
||||||
|
|
||||||
dir_copy.list = g_new0 (file_entry_t, size);
|
dir_copy.list = g_new0 (file_entry_t, size);
|
||||||
dir_copy.size = size;
|
dir_copy.size = size;
|
||||||
@ -538,6 +527,26 @@ dir_list_clean (dir_list * list)
|
|||||||
dir_list_grow (list, DIR_LIST_MIN_SIZE - list->size);
|
dir_list_grow (list, DIR_LIST_MIN_SIZE - list->size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
void
|
||||||
|
dir_list_free_list (dir_list * list)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < list->len; i++)
|
||||||
|
{
|
||||||
|
file_entry_t *fentry;
|
||||||
|
|
||||||
|
fentry = &list->list[i];
|
||||||
|
g_free (fentry->fname);
|
||||||
|
}
|
||||||
|
|
||||||
|
MC_PTR_FREE (list->list);
|
||||||
|
list->len = 0;
|
||||||
|
list->size = 0;
|
||||||
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
/** Used to set up a directory list when there is no access to a directory */
|
/** Used to set up a directory list when there is no access to a directory */
|
||||||
|
|
||||||
@ -744,7 +753,7 @@ dir_list_reload (dir_list * list, const vfs_path_t * vpath, GCompareFunc sort,
|
|||||||
dir_list_clean (list);
|
dir_list_clean (list);
|
||||||
if (!dir_list_init (list))
|
if (!dir_list_init (list))
|
||||||
{
|
{
|
||||||
dir_list_clean (&dir_copy);
|
dir_list_free_list (&dir_copy);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -805,7 +814,7 @@ dir_list_reload (dir_list * list, const vfs_path_t * vpath, GCompareFunc sort,
|
|||||||
|
|
||||||
dir_list_sort (list, sort, sort_op);
|
dir_list_sort (list, sort, sort_op);
|
||||||
|
|
||||||
dir_list_clean (&dir_copy);
|
dir_list_free_list (&dir_copy);
|
||||||
rotate_dash (FALSE);
|
rotate_dash (FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -55,6 +55,7 @@ void dir_list_reload (dir_list * list, const vfs_path_t * vpath, GCompareFunc so
|
|||||||
void dir_list_sort (dir_list * list, GCompareFunc sort, const dir_sort_options_t * sort_op);
|
void dir_list_sort (dir_list * list, GCompareFunc sort, const dir_sort_options_t * sort_op);
|
||||||
gboolean dir_list_init (dir_list * list);
|
gboolean dir_list_init (dir_list * list);
|
||||||
void dir_list_clean (dir_list * list);
|
void dir_list_clean (dir_list * list);
|
||||||
|
void dir_list_free_list (dir_list * list);
|
||||||
gboolean handle_path (const char *path, struct stat *buf1, int *link_to_dir, int *stale_link);
|
gboolean handle_path (const char *path, struct stat *buf1, int *link_to_dir, int *stale_link);
|
||||||
|
|
||||||
/* Sorting functions */
|
/* Sorting functions */
|
||||||
|
@ -489,7 +489,7 @@ make_symlink (file_op_context_t * ctx, const char *src_path, const char *dst_pat
|
|||||||
char link_target[MC_MAXPATHLEN];
|
char link_target[MC_MAXPATHLEN];
|
||||||
int len;
|
int len;
|
||||||
FileProgressStatus return_status;
|
FileProgressStatus return_status;
|
||||||
struct stat sb;
|
struct stat dst_stat;
|
||||||
vfs_path_t *src_vpath;
|
vfs_path_t *src_vpath;
|
||||||
vfs_path_t *dst_vpath;
|
vfs_path_t *dst_vpath;
|
||||||
gboolean dst_is_symlink;
|
gboolean dst_is_symlink;
|
||||||
@ -497,7 +497,7 @@ make_symlink (file_op_context_t * ctx, const char *src_path, const char *dst_pat
|
|||||||
|
|
||||||
src_vpath = vfs_path_from_str (src_path);
|
src_vpath = vfs_path_from_str (src_path);
|
||||||
dst_vpath = vfs_path_from_str (dst_path);
|
dst_vpath = vfs_path_from_str (dst_path);
|
||||||
dst_is_symlink = (mc_lstat (dst_vpath, &sb) == 0) && S_ISLNK (sb.st_mode);
|
dst_is_symlink = (mc_lstat (dst_vpath, &dst_stat) == 0) && S_ISLNK (dst_stat.st_mode);
|
||||||
|
|
||||||
retry_src_readlink:
|
retry_src_readlink:
|
||||||
len = mc_readlink (src_vpath, link_target, sizeof (link_target) - 1);
|
len = mc_readlink (src_vpath, link_target, sizeof (link_target) - 1);
|
||||||
@ -1556,7 +1556,7 @@ static FileProgressStatus
|
|||||||
do_move_dir_dir (const WPanel * panel, file_op_total_context_t * tctx, file_op_context_t * ctx,
|
do_move_dir_dir (const WPanel * panel, file_op_total_context_t * tctx, file_op_context_t * ctx,
|
||||||
const char *s, const char *d)
|
const char *s, const char *d)
|
||||||
{
|
{
|
||||||
struct stat sbuf, dbuf;
|
struct stat src_stat, dst_stat;
|
||||||
FileProgressStatus return_status = FILE_CONT;
|
FileProgressStatus return_status = FILE_CONT;
|
||||||
gboolean move_over = FALSE;
|
gboolean move_over = FALSE;
|
||||||
gboolean dstat_ok;
|
gboolean dstat_ok;
|
||||||
@ -1577,11 +1577,11 @@ do_move_dir_dir (const WPanel * panel, file_op_total_context_t * tctx, file_op_c
|
|||||||
|
|
||||||
mc_refresh ();
|
mc_refresh ();
|
||||||
|
|
||||||
mc_stat (src_vpath, &sbuf);
|
mc_stat (src_vpath, &src_stat);
|
||||||
|
|
||||||
dstat_ok = (mc_stat (dst_vpath, &dbuf) == 0);
|
dstat_ok = (mc_stat (dst_vpath, &dst_stat) == 0);
|
||||||
|
|
||||||
if (dstat_ok && check_same_file (s, &sbuf, d, &dbuf, &return_status))
|
if (dstat_ok && check_same_file (s, &src_stat, d, &dst_stat, &return_status))
|
||||||
goto ret_fast;
|
goto ret_fast;
|
||||||
|
|
||||||
if (!dstat_ok)
|
if (!dstat_ok)
|
||||||
@ -1601,7 +1601,7 @@ do_move_dir_dir (const WPanel * panel, file_op_total_context_t * tctx, file_op_c
|
|||||||
|
|
||||||
/* Check if the user inputted an existing dir */
|
/* Check if the user inputted an existing dir */
|
||||||
retry_dst_stat:
|
retry_dst_stat:
|
||||||
if (mc_stat (dst_vpath, &dbuf) == 0)
|
if (mc_stat (dst_vpath, &dst_stat) == 0)
|
||||||
{
|
{
|
||||||
if (move_over)
|
if (move_over)
|
||||||
{
|
{
|
||||||
@ -1615,7 +1615,7 @@ do_move_dir_dir (const WPanel * panel, file_op_total_context_t * tctx, file_op_c
|
|||||||
return_status = FILE_SKIPALL;
|
return_status = FILE_SKIPALL;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (S_ISDIR (dbuf.st_mode))
|
if (S_ISDIR (dst_stat.st_mode))
|
||||||
return_status = file_error (TRUE, _("Cannot overwrite directory \"%s\"\n%s"), d);
|
return_status = file_error (TRUE, _("Cannot overwrite directory \"%s\"\n%s"), d);
|
||||||
else
|
else
|
||||||
return_status = file_error (TRUE, _("Cannot overwrite file \"%s\"\n%s"), d);
|
return_status = file_error (TRUE, _("Cannot overwrite file \"%s\"\n%s"), d);
|
||||||
@ -1654,7 +1654,7 @@ do_move_dir_dir (const WPanel * panel, file_op_total_context_t * tctx, file_op_c
|
|||||||
/* In case of single directory, calculate totals. In case of many directories,
|
/* In case of single directory, calculate totals. In case of many directories,
|
||||||
totals are calcuated already. */
|
totals are calcuated already. */
|
||||||
return_status =
|
return_status =
|
||||||
panel_operate_init_totals (panel, src_vpath, &sbuf, ctx, FALSE,
|
panel_operate_init_totals (panel, src_vpath, &src_stat, ctx, FALSE,
|
||||||
FILEGUI_DIALOG_ONE_ITEM);
|
FILEGUI_DIALOG_ONE_ITEM);
|
||||||
if (return_status != FILE_CONT)
|
if (return_status != FILE_CONT)
|
||||||
goto ret;
|
goto ret;
|
||||||
@ -2759,7 +2759,7 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
gboolean toplevel, gboolean move_over, gboolean do_delete, GSList * parent_dirs)
|
gboolean toplevel, gboolean move_over, gboolean do_delete, GSList * parent_dirs)
|
||||||
{
|
{
|
||||||
struct dirent *next;
|
struct dirent *next;
|
||||||
struct stat buf, cbuf;
|
struct stat dst_stat, src_stat;
|
||||||
DIR *reading;
|
DIR *reading;
|
||||||
FileProgressStatus return_status = FILE_CONT;
|
FileProgressStatus return_status = FILE_CONT;
|
||||||
struct link *lp;
|
struct link *lp;
|
||||||
@ -2772,7 +2772,7 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
/* First get the mode of the source dir */
|
/* First get the mode of the source dir */
|
||||||
|
|
||||||
retry_src_stat:
|
retry_src_stat:
|
||||||
if ((*ctx->stat_func) (src_vpath, &cbuf) != 0)
|
if ((*ctx->stat_func) (src_vpath, &src_stat) != 0)
|
||||||
{
|
{
|
||||||
if (ctx->skip_all)
|
if (ctx->skip_all)
|
||||||
return_status = FILE_SKIPALL;
|
return_status = FILE_SKIPALL;
|
||||||
@ -2787,7 +2787,7 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
goto ret_fast;
|
goto ret_fast;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_in_linklist (dest_dirs, src_vpath, &cbuf) != NULL)
|
if (is_in_linklist (dest_dirs, src_vpath, &src_stat) != NULL)
|
||||||
{
|
{
|
||||||
/* Don't copy a directory we created before (we don't want to copy
|
/* Don't copy a directory we created before (we don't want to copy
|
||||||
infinitely if a directory is copied into itself) */
|
infinitely if a directory is copied into itself) */
|
||||||
@ -2801,7 +2801,7 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
/* Check the hardlinks */
|
/* Check the hardlinks */
|
||||||
if (ctx->preserve)
|
if (ctx->preserve)
|
||||||
{
|
{
|
||||||
switch (check_hardlinks (src_vpath, &cbuf, dst_vpath, &ctx->skip_all))
|
switch (check_hardlinks (src_vpath, &src_stat, dst_vpath, &ctx->skip_all))
|
||||||
{
|
{
|
||||||
case HARDLINK_OK:
|
case HARDLINK_OK:
|
||||||
/* We have made a hardlink - no more processing is necessary */
|
/* We have made a hardlink - no more processing is necessary */
|
||||||
@ -2816,7 +2816,7 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!S_ISDIR (cbuf.st_mode))
|
if (!S_ISDIR (src_stat.st_mode))
|
||||||
{
|
{
|
||||||
if (ctx->skip_all)
|
if (ctx->skip_all)
|
||||||
return_status = FILE_SKIPALL;
|
return_status = FILE_SKIPALL;
|
||||||
@ -2831,7 +2831,7 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
goto ret_fast;
|
goto ret_fast;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_in_linklist (parent_dirs, src_vpath, &cbuf) != NULL)
|
if (is_in_linklist (parent_dirs, src_vpath, &src_stat) != NULL)
|
||||||
{
|
{
|
||||||
/* we found a cyclic symbolic link */
|
/* we found a cyclic symbolic link */
|
||||||
message (D_ERROR, MSG_ERROR, _("Cannot copy cyclic symbolic link\n\"%s\""), s);
|
message (D_ERROR, MSG_ERROR, _("Cannot copy cyclic symbolic link\n\"%s\""), s);
|
||||||
@ -2841,13 +2841,13 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
|
|
||||||
lp = g_new0 (struct link, 1);
|
lp = g_new0 (struct link, 1);
|
||||||
lp->vfs = vfs_path_get_by_index (src_vpath, -1)->class;
|
lp->vfs = vfs_path_get_by_index (src_vpath, -1)->class;
|
||||||
lp->ino = cbuf.st_ino;
|
lp->ino = src_stat.st_ino;
|
||||||
lp->dev = cbuf.st_dev;
|
lp->dev = src_stat.st_dev;
|
||||||
parent_dirs = g_slist_prepend (parent_dirs, lp);
|
parent_dirs = g_slist_prepend (parent_dirs, lp);
|
||||||
|
|
||||||
retry_dst_stat:
|
retry_dst_stat:
|
||||||
/* Now, check if the dest dir exists, if not, create it. */
|
/* Now, check if the dest dir exists, if not, create it. */
|
||||||
if (mc_stat (dst_vpath, &buf) != 0)
|
if (mc_stat (dst_vpath, &dst_stat) != 0)
|
||||||
{
|
{
|
||||||
/* Here the dir doesn't exist : make it ! */
|
/* Here the dir doesn't exist : make it ! */
|
||||||
if (move_over && mc_rename (src_vpath, dst_vpath) == 0)
|
if (move_over && mc_rename (src_vpath, dst_vpath) == 0)
|
||||||
@ -2866,7 +2866,7 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
* so, say /bla exists, if we copy /tmp/\* to /bla, we get /bla/tmp/\*
|
* so, say /bla exists, if we copy /tmp/\* to /bla, we get /bla/tmp/\*
|
||||||
* or ( /bla doesn't exist ) /tmp/\* to /bla -> /bla/\*
|
* or ( /bla doesn't exist ) /tmp/\* to /bla -> /bla/\*
|
||||||
*/
|
*/
|
||||||
if (!S_ISDIR (buf.st_mode))
|
if (!S_ISDIR (dst_stat.st_mode))
|
||||||
{
|
{
|
||||||
if (ctx->skip_all)
|
if (ctx->skip_all)
|
||||||
return_status = FILE_SKIPALL;
|
return_status = FILE_SKIPALL;
|
||||||
@ -2899,7 +2899,7 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
|
|
||||||
if (do_mkdir)
|
if (do_mkdir)
|
||||||
{
|
{
|
||||||
while (my_mkdir (dst_vpath, (cbuf.st_mode & ctx->umask_kill) | S_IRWXU) != 0)
|
while (my_mkdir (dst_vpath, (src_stat.st_mode & ctx->umask_kill) | S_IRWXU) != 0)
|
||||||
{
|
{
|
||||||
if (ctx->skip_all)
|
if (ctx->skip_all)
|
||||||
return_status = FILE_SKIPALL;
|
return_status = FILE_SKIPALL;
|
||||||
@ -2915,16 +2915,16 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
}
|
}
|
||||||
|
|
||||||
lp = g_new0 (struct link, 1);
|
lp = g_new0 (struct link, 1);
|
||||||
mc_stat (dst_vpath, &buf);
|
mc_stat (dst_vpath, &dst_stat);
|
||||||
lp->vfs = vfs_path_get_by_index (dst_vpath, -1)->class;
|
lp->vfs = vfs_path_get_by_index (dst_vpath, -1)->class;
|
||||||
lp->ino = buf.st_ino;
|
lp->ino = dst_stat.st_ino;
|
||||||
lp->dev = buf.st_dev;
|
lp->dev = dst_stat.st_dev;
|
||||||
dest_dirs = g_slist_prepend (dest_dirs, lp);
|
dest_dirs = g_slist_prepend (dest_dirs, lp);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ctx->preserve_uidgid)
|
if (ctx->preserve_uidgid)
|
||||||
{
|
{
|
||||||
while (mc_chown (dst_vpath, cbuf.st_uid, cbuf.st_gid) != 0)
|
while (mc_chown (dst_vpath, src_stat.st_uid, src_stat.st_gid) != 0)
|
||||||
{
|
{
|
||||||
if (ctx->skip_all)
|
if (ctx->skip_all)
|
||||||
return_status = FILE_SKIPALL;
|
return_status = FILE_SKIPALL;
|
||||||
@ -2959,8 +2959,8 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
path = mc_build_filename (s, next->d_name, (char *) NULL);
|
path = mc_build_filename (s, next->d_name, (char *) NULL);
|
||||||
tmp_vpath = vfs_path_from_str (path);
|
tmp_vpath = vfs_path_from_str (path);
|
||||||
|
|
||||||
(*ctx->stat_func) (tmp_vpath, &buf);
|
(*ctx->stat_func) (tmp_vpath, &dst_stat);
|
||||||
if (S_ISDIR (buf.st_mode))
|
if (S_ISDIR (dst_stat.st_mode))
|
||||||
{
|
{
|
||||||
char *mdpath;
|
char *mdpath;
|
||||||
|
|
||||||
@ -2992,11 +2992,11 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
{
|
{
|
||||||
lp = g_new0 (struct link, 1);
|
lp = g_new0 (struct link, 1);
|
||||||
lp->src_vpath = tmp_vpath;
|
lp->src_vpath = tmp_vpath;
|
||||||
lp->st_mode = buf.st_mode;
|
lp->st_mode = dst_stat.st_mode;
|
||||||
erase_list = g_slist_append (erase_list, lp);
|
erase_list = g_slist_append (erase_list, lp);
|
||||||
tmp_vpath = NULL;
|
tmp_vpath = NULL;
|
||||||
}
|
}
|
||||||
else if (S_ISDIR (buf.st_mode))
|
else if (S_ISDIR (dst_stat.st_mode))
|
||||||
return_status = erase_dir_iff_empty (ctx, tmp_vpath, tctx->progress_count);
|
return_status = erase_dir_iff_empty (ctx, tmp_vpath, tctx->progress_count);
|
||||||
else
|
else
|
||||||
return_status = erase_file (tctx, ctx, tmp_vpath);
|
return_status = erase_file (tctx, ctx, tmp_vpath);
|
||||||
@ -3009,16 +3009,16 @@ copy_dir_dir (file_op_total_context_t * tctx, file_op_context_t * ctx, const cha
|
|||||||
{
|
{
|
||||||
mc_timesbuf_t times;
|
mc_timesbuf_t times;
|
||||||
|
|
||||||
mc_chmod (dst_vpath, cbuf.st_mode & ctx->umask_kill);
|
mc_chmod (dst_vpath, src_stat.st_mode & ctx->umask_kill);
|
||||||
get_times (&cbuf, ×);
|
get_times (&src_stat, ×);
|
||||||
mc_utime (dst_vpath, ×);
|
mc_utime (dst_vpath, ×);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
cbuf.st_mode = umask (-1);
|
src_stat.st_mode = umask (-1);
|
||||||
umask (cbuf.st_mode);
|
umask (src_stat.st_mode);
|
||||||
cbuf.st_mode = 0100777 & ~cbuf.st_mode;
|
src_stat.st_mode = 0100777 & ~src_stat.st_mode;
|
||||||
mc_chmod (dst_vpath, cbuf.st_mode & ctx->umask_kill);
|
mc_chmod (dst_vpath, src_stat.st_mode & ctx->umask_kill);
|
||||||
}
|
}
|
||||||
|
|
||||||
ret:
|
ret:
|
||||||
|
@ -78,13 +78,7 @@
|
|||||||
/* NetBSD 1.5.2 needs these, for the declaration of struct statfs. */
|
/* NetBSD 1.5.2 needs these, for the declaration of struct statfs. */
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#include <sys/mount.h>
|
#include <sys/mount.h>
|
||||||
#if defined HAVE_NFS_NFS_CLNT_H && defined HAVE_NFS_VFS_H
|
#elif defined HAVE_OS_H /* Haiku, also (obsolete) BeOS */
|
||||||
/* Ultrix 4.4 needs these for the declaration of struct statfs. */
|
|
||||||
#include <netinet/in.h>
|
|
||||||
#include <nfs/nfs_clnt.h>
|
|
||||||
#include <nfs/vfs.h>
|
|
||||||
#endif
|
|
||||||
#elif defined HAVE_OS_H /* BeOS */
|
|
||||||
#include <fs_info.h>
|
#include <fs_info.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -106,7 +100,7 @@
|
|||||||
#else
|
#else
|
||||||
#define STATFS statfs
|
#define STATFS statfs
|
||||||
#define STRUCT_STATVFS struct statfs
|
#define STRUCT_STATVFS struct statfs
|
||||||
#ifdef HAVE_OS_H /* BeOS */
|
#ifdef HAVE_OS_H /* Haiku, also (obsolete) BeOS */
|
||||||
/* BeOS has a statvfs function, but it does not return sensible values
|
/* BeOS has a statvfs function, but it does not return sensible values
|
||||||
for f_files, f_ffree and f_favail, and lacks f_type, f_basetype and
|
for f_files, f_ffree and f_favail, and lacks f_type, f_basetype and
|
||||||
f_fstypename. Use 'struct fs_info' instead. */
|
f_fstypename. Use 'struct fs_info' instead. */
|
||||||
@ -138,7 +132,7 @@ statfs (char const *filename, struct fs_info *buf)
|
|||||||
#else
|
#else
|
||||||
#if defined HAVE_STRUCT_STATVFS_F_FSTYPENAME || defined HAVE_STRUCT_STATFS_F_FSTYPENAME
|
#if defined HAVE_STRUCT_STATVFS_F_FSTYPENAME || defined HAVE_STRUCT_STATFS_F_FSTYPENAME
|
||||||
#define STATXFS_FILE_SYSTEM_TYPE_MEMBER_NAME f_fstypename
|
#define STATXFS_FILE_SYSTEM_TYPE_MEMBER_NAME f_fstypename
|
||||||
#elif defined HAVE_OS_H /* BeOS */
|
#elif defined HAVE_OS_H /* Haiku, also (obsolete) BeOS */
|
||||||
#define STATXFS_FILE_SYSTEM_TYPE_MEMBER_NAME fsh_name
|
#define STATXFS_FILE_SYSTEM_TYPE_MEMBER_NAME fsh_name
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
@ -1801,7 +1801,7 @@ do_nc (void)
|
|||||||
/* don't handle VFS timestamps for dirs opened in panels */
|
/* don't handle VFS timestamps for dirs opened in panels */
|
||||||
mc_event_destroy (MCEVENT_GROUP_CORE, "vfs_timestamp");
|
mc_event_destroy (MCEVENT_GROUP_CORE, "vfs_timestamp");
|
||||||
|
|
||||||
dir_list_clean (&panelized_panel.list);
|
dir_list_free_list (&panelized_panel.list);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Program end */
|
/* Program end */
|
||||||
|
@ -49,7 +49,7 @@
|
|||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
|
|
||||||
#ifdef MOUNTED_GETFSSTAT /* OSF_1 and Darwin1.3.x */
|
#ifdef MOUNTED_GETFSSTAT /* OSF_1, also (obsolete) Apple Darwin 1.3 */
|
||||||
#ifdef HAVE_SYS_UCRED_H
|
#ifdef HAVE_SYS_UCRED_H
|
||||||
#include <grp.h> /* needed on OSF V4.0 for definition of NGROUPS,
|
#include <grp.h> /* needed on OSF V4.0 for definition of NGROUPS,
|
||||||
NGROUPS is used as an array dimension in ucred.h */
|
NGROUPS is used as an array dimension in ucred.h */
|
||||||
@ -78,11 +78,9 @@
|
|||||||
#ifdef HAVE_SYS_STATFS_H
|
#ifdef HAVE_SYS_STATFS_H
|
||||||
#include <sys/statfs.h>
|
#include <sys/statfs.h>
|
||||||
#endif
|
#endif
|
||||||
#ifdef HAVE_DUSTAT_H /* AIX PS/2 */
|
|
||||||
#include <sys/dustat.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTENT1 /* 4.3BSD, SunOS, HP-UX, Dynix, Irix. */
|
#ifdef MOUNTED_GETMNTENT1 /* glibc, HP-UX, IRIX, Cygwin, Android,
|
||||||
|
also (obsolete) 4.3BSD, SunOS */
|
||||||
#include <mntent.h>
|
#include <mntent.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#ifndef MOUNTED
|
#ifndef MOUNTED
|
||||||
@ -92,60 +90,46 @@
|
|||||||
#ifdef MNT_MNTTAB /* HP-UX. */
|
#ifdef MNT_MNTTAB /* HP-UX. */
|
||||||
#define MOUNTED MNT_MNTTAB
|
#define MOUNTED MNT_MNTTAB
|
||||||
#endif
|
#endif
|
||||||
#ifdef MNTTABNAME /* Dynix. */
|
|
||||||
#define MOUNTED MNTTABNAME
|
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTINFO /* 4.4BSD. */
|
#ifdef MOUNTED_GETMNTINFO /* Mac OS X, FreeBSD, OpenBSD, also (obsolete) 4.4BSD */
|
||||||
#include <sys/mount.h>
|
#include <sys/mount.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTINFO2 /* NetBSD 3.0. */
|
#ifdef MOUNTED_GETMNTINFO2 /* NetBSD, Minix */
|
||||||
#include <sys/statvfs.h>
|
#include <sys/statvfs.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNT /* Ultrix. */
|
#ifdef MOUNTED_FS_STAT_DEV /* Haiku, also (obsolete) BeOS */
|
||||||
#include <sys/mount.h>
|
|
||||||
#include <sys/fs_types.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MOUNTED_FS_STAT_DEV /* BeOS. */
|
|
||||||
#include <fs_info.h>
|
#include <fs_info.h>
|
||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef MOUNTED_FREAD_FSTYP /* SVR3. */
|
#ifdef MOUNTED_FREAD_FSTYP /* (obsolete) SVR3 */
|
||||||
#include <mnttab.h>
|
#include <mnttab.h>
|
||||||
#include <sys/fstyp.h>
|
#include <sys/fstyp.h>
|
||||||
#include <sys/statfs.h>
|
#include <sys/statfs.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef MOUNTED_LISTMNTENT
|
#ifdef MOUNTED_GETEXTMNTENT /* Solaris >= 8 */
|
||||||
#include <mntent.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTENT2 /* SVR4. */
|
|
||||||
#include <sys/mnttab.h>
|
#include <sys/mnttab.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef MOUNTED_VMOUNT /* AIX. */
|
#ifdef MOUNTED_GETMNTENT2 /* Solaris < 8, also (obsolete) SVR4 */
|
||||||
|
#include <sys/mnttab.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef MOUNTED_VMOUNT /* AIX */
|
||||||
#include <fshelp.h>
|
#include <fshelp.h>
|
||||||
#include <sys/vfs.h>
|
#include <sys/vfs.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef MOUNTED_INTERIX_STATVFS /* Interix. */
|
#ifdef MOUNTED_INTERIX_STATVFS /* Interix */
|
||||||
#include <sys/statvfs.h>
|
#include <sys/statvfs.h>
|
||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef DOLPHIN
|
|
||||||
/* So special that it's not worth putting this in autoconf. */
|
|
||||||
#undef MOUNTED_FREAD_FSTYP
|
|
||||||
#define MOUNTED_GETMNTTBL
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HAVE_SYS_MNTENT_H
|
#ifdef HAVE_SYS_MNTENT_H
|
||||||
/* This is to get MNTOPT_IGNORE on e.g. SVR4. */
|
/* This is to get MNTOPT_IGNORE on e.g. SVR4. */
|
||||||
#include <sys/mntent.h>
|
#include <sys/mntent.h>
|
||||||
@ -377,7 +361,7 @@ free_mount_entry (struct mount_entry *me)
|
|||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTINFO
|
#ifdef MOUNTED_GETMNTINFO /* Mac OS X, FreeBSD, OpenBSD, also (obsolete) 4.4BSD */
|
||||||
|
|
||||||
#ifndef HAVE_STRUCT_STATFS_F_FSTYPENAME
|
#ifndef HAVE_STRUCT_STATFS_F_FSTYPENAME
|
||||||
static char *
|
static char *
|
||||||
@ -511,7 +495,7 @@ fsp_to_string (const struct statfs *fsp)
|
|||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
|
|
||||||
#ifdef MOUNTED_VMOUNT /* AIX. */
|
#ifdef MOUNTED_VMOUNT /* AIX */
|
||||||
static char *
|
static char *
|
||||||
fstype_to_string (int t)
|
fstype_to_string (int t)
|
||||||
{
|
{
|
||||||
@ -566,36 +550,7 @@ dev_from_mount_options (char const *mount_options)
|
|||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
|
|
||||||
#if defined _AIX && defined _I386
|
#if defined MOUNTED_GETMNTENT1 && defined __linux__ /* GNU/Linux, Android */
|
||||||
/* AIX PS/2 does not supply statfs. */
|
|
||||||
|
|
||||||
static int
|
|
||||||
statfs (char *file, struct statfs *fsb)
|
|
||||||
{
|
|
||||||
struct stat stats;
|
|
||||||
struct dustat fsd;
|
|
||||||
|
|
||||||
if (stat (file, &stats) != 0)
|
|
||||||
return -1;
|
|
||||||
if (dustat (stats.st_dev, 0, &fsd, sizeof (fsd)))
|
|
||||||
return -1;
|
|
||||||
fsb->f_type = 0;
|
|
||||||
fsb->f_bsize = fsd.du_bsize;
|
|
||||||
fsb->f_blocks = fsd.du_fsize - fsd.du_isize;
|
|
||||||
fsb->f_bfree = fsd.du_tfree;
|
|
||||||
fsb->f_bavail = fsd.du_tfree;
|
|
||||||
fsb->f_files = (fsd.du_isize - 2) * fsd.du_inopb;
|
|
||||||
fsb->f_ffree = fsd.du_tinode;
|
|
||||||
fsb->f_fsid.val[0] = fsd.du_site;
|
|
||||||
fsb->f_fsid.val[1] = fsd.du_pckno;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif /* _AIX && _I386 */
|
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
|
||||||
|
|
||||||
#if defined MOUNTED_GETMNTENT1 && defined __linux__
|
|
||||||
|
|
||||||
/* Unescape the paths in mount tables.
|
/* Unescape the paths in mount tables.
|
||||||
STR is updated in place. */
|
STR is updated in place. */
|
||||||
@ -633,38 +588,8 @@ read_file_system_list (void)
|
|||||||
GSList *mount_list = NULL;
|
GSList *mount_list = NULL;
|
||||||
struct mount_entry *me;
|
struct mount_entry *me;
|
||||||
|
|
||||||
#ifdef MOUNTED_LISTMNTENT
|
#ifdef MOUNTED_GETMNTENT1 /* glibc, HP-UX, IRIX, Cygwin, Android,
|
||||||
{
|
also (obsolete) 4.3BSD, SunOS */
|
||||||
struct tabmntent *mntlist, *p;
|
|
||||||
|
|
||||||
/* the third and fourth arguments could be used to filter mounts,
|
|
||||||
but Crays doesn't seem to have any mounts that we want to
|
|
||||||
remove. Specifically, automount create normal NFS mounts.
|
|
||||||
*/
|
|
||||||
|
|
||||||
if (listmntent (&mntlist, KMTAB, NULL, NULL) < 0)
|
|
||||||
return NULL;
|
|
||||||
for (p = mntlist; p; p = p->next)
|
|
||||||
{
|
|
||||||
struct mntent *mnt = p->ment;
|
|
||||||
|
|
||||||
me = g_malloc (sizeof (*me));
|
|
||||||
me->me_devname = g_strdup (mnt->mnt_fsname);
|
|
||||||
me->me_mountdir = g_strdup (mnt->mnt_dir);
|
|
||||||
me->me_mntroot = NULL;
|
|
||||||
me->me_type = g_strdup (mnt->mnt_type);
|
|
||||||
me->me_type_malloced = 1;
|
|
||||||
me->me_dummy = ME_DUMMY (me->me_devname, me->me_type);
|
|
||||||
me->me_remote = ME_REMOTE (me->me_devname, me->me_type);
|
|
||||||
me->me_dev = -1;
|
|
||||||
|
|
||||||
mount_list = g_slist_prepend (mount_list, me);
|
|
||||||
}
|
|
||||||
freemntlist (mntlist);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTENT1 /* GNU/Linux, 4.3BSD, SunOS, HP-UX, Dynix, Irix. */
|
|
||||||
{
|
{
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
|
|
||||||
@ -790,7 +715,7 @@ read_file_system_list (void)
|
|||||||
}
|
}
|
||||||
#endif /* MOUNTED_GETMNTENT1. */
|
#endif /* MOUNTED_GETMNTENT1. */
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTINFO /* 4.4BSD. */
|
#ifdef MOUNTED_GETMNTINFO /* Mac OS X, FreeBSD, OpenBSD, also (obsolete) 4.4BSD */
|
||||||
{
|
{
|
||||||
struct statfs *fsp;
|
struct statfs *fsp;
|
||||||
int entries;
|
int entries;
|
||||||
@ -817,7 +742,7 @@ read_file_system_list (void)
|
|||||||
}
|
}
|
||||||
#endif /* MOUNTED_GETMNTINFO */
|
#endif /* MOUNTED_GETMNTINFO */
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTINFO2 /* NetBSD 3.0. */
|
#ifdef MOUNTED_GETMNTINFO2 /* NetBSD, Minix */
|
||||||
{
|
{
|
||||||
struct statvfs *fsp;
|
struct statvfs *fsp;
|
||||||
int entries;
|
int entries;
|
||||||
@ -842,37 +767,7 @@ read_file_system_list (void)
|
|||||||
}
|
}
|
||||||
#endif /* MOUNTED_GETMNTINFO2 */
|
#endif /* MOUNTED_GETMNTINFO2 */
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNT /* Ultrix. */
|
#if defined MOUNTED_FS_STAT_DEV /* Haiku, also (obsolete) BeOS */
|
||||||
{
|
|
||||||
int offset = 0;
|
|
||||||
int val;
|
|
||||||
struct fs_data fsd;
|
|
||||||
|
|
||||||
while (TRUE)
|
|
||||||
{
|
|
||||||
errno = 0;
|
|
||||||
val = getmnt (&offset, &fsd, sizeof (fsd), NOSTAT_MANY, (char *) NULL);
|
|
||||||
if (val < 0)
|
|
||||||
goto free_then_fail;
|
|
||||||
if (val == 0)
|
|
||||||
break;
|
|
||||||
|
|
||||||
me = g_malloc (sizeof (*me));
|
|
||||||
me->me_devname = g_strdup (fsd.fd_req.devname);
|
|
||||||
me->me_mountdir = g_strdup (fsd.fd_req.path);
|
|
||||||
me->me_mntroot = NULL;
|
|
||||||
me->me_type = gt_names[fsd.fd_req.fstype];
|
|
||||||
me->me_type_malloced = 0;
|
|
||||||
me->me_dummy = ME_DUMMY (me->me_devname, me->me_type);
|
|
||||||
me->me_remote = ME_REMOTE (me->me_devname, me->me_type);
|
|
||||||
me->me_dev = fsd.fd_req.dev;
|
|
||||||
|
|
||||||
mount_list = g_slist_prepend (mount_list, me);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif /* MOUNTED_GETMNT. */
|
|
||||||
|
|
||||||
#if defined MOUNTED_FS_STAT_DEV /* BeOS */
|
|
||||||
{
|
{
|
||||||
/* The next_dev() and fs_stat_dev() system calls give the list of
|
/* The next_dev() and fs_stat_dev() system calls give the list of
|
||||||
all file systems, including the information returned by statvfs()
|
all file systems, including the information returned by statvfs()
|
||||||
@ -972,7 +867,7 @@ read_file_system_list (void)
|
|||||||
}
|
}
|
||||||
#endif /* MOUNTED_FS_STAT_DEV */
|
#endif /* MOUNTED_FS_STAT_DEV */
|
||||||
|
|
||||||
#ifdef MOUNTED_GETFSSTAT /* __alpha running OSF_1 */
|
#ifdef MOUNTED_GETFSSTAT /* OSF/1, also (obsolete) Apple Darwin 1.3 */
|
||||||
{
|
{
|
||||||
int numsys, counter;
|
int numsys, counter;
|
||||||
size_t bufsize;
|
size_t bufsize;
|
||||||
@ -1016,7 +911,7 @@ read_file_system_list (void)
|
|||||||
}
|
}
|
||||||
#endif /* MOUNTED_GETFSSTAT */
|
#endif /* MOUNTED_GETFSSTAT */
|
||||||
|
|
||||||
#if defined MOUNTED_FREAD || defined MOUNTED_FREAD_FSTYP /* SVR[23]. */
|
#if defined MOUNTED_FREAD_FSTYP /* (obsolete) SVR3 */
|
||||||
{
|
{
|
||||||
struct mnttab mnt;
|
struct mnttab mnt;
|
||||||
char *table = "/etc/mnttab";
|
char *table = "/etc/mnttab";
|
||||||
@ -1029,17 +924,12 @@ read_file_system_list (void)
|
|||||||
while (fread (&mnt, sizeof (mnt), 1, fp) > 0)
|
while (fread (&mnt, sizeof (mnt), 1, fp) > 0)
|
||||||
{
|
{
|
||||||
me = g_malloc (sizeof (*me));
|
me = g_malloc (sizeof (*me));
|
||||||
#ifdef GETFSTYP /* SVR3. */
|
|
||||||
me->me_devname = g_strdup (mnt.mt_dev);
|
me->me_devname = g_strdup (mnt.mt_dev);
|
||||||
#else
|
|
||||||
me->me_devname = g_strconcat ("/dev/", mnt.mt_dev, (char *) NULL);
|
|
||||||
#endif
|
|
||||||
me->me_mountdir = g_strdup (mnt.mt_filsys);
|
me->me_mountdir = g_strdup (mnt.mt_filsys);
|
||||||
me->me_mntroot = NULL;
|
me->me_mntroot = NULL;
|
||||||
me->me_dev = (dev_t) (-1); /* Magic; means not known yet. */
|
me->me_dev = (dev_t) (-1); /* Magic; means not known yet. */
|
||||||
me->me_type = "";
|
me->me_type = "";
|
||||||
me->me_type_malloced = 0;
|
me->me_type_malloced = 0;
|
||||||
#ifdef GETFSTYP /* SVR3. */
|
|
||||||
{
|
{
|
||||||
struct statfs fsd;
|
struct statfs fsd;
|
||||||
char typebuf[FSTYPSZ];
|
char typebuf[FSTYPSZ];
|
||||||
@ -1051,7 +941,6 @@ read_file_system_list (void)
|
|||||||
me->me_type_malloced = 1;
|
me->me_type_malloced = 1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
me->me_dummy = ME_DUMMY (me->me_devname, me->me_type);
|
me->me_dummy = ME_DUMMY (me->me_devname, me->me_type);
|
||||||
me->me_remote = ME_REMOTE (me->me_devname, me->me_type);
|
me->me_remote = ME_REMOTE (me->me_devname, me->me_type);
|
||||||
|
|
||||||
@ -1071,34 +960,54 @@ read_file_system_list (void)
|
|||||||
if (fclose (fp) == EOF)
|
if (fclose (fp) == EOF)
|
||||||
goto free_then_fail;
|
goto free_then_fail;
|
||||||
}
|
}
|
||||||
#endif /* MOUNTED_FREAD || MOUNTED_FREAD_FSTYP. */
|
#endif /* MOUNTED_FREAD_FSTYP */
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTTBL /* DolphinOS goes its own way. */
|
#ifdef MOUNTED_GETEXTMNTENT /* Solaris >= 8 */
|
||||||
{
|
{
|
||||||
struct mntent **mnttbl = getmnttbl (), **ent;
|
struct extmnttab mnt;
|
||||||
|
const char *table = MNTTAB;
|
||||||
|
FILE *fp;
|
||||||
|
int ret;
|
||||||
|
|
||||||
for (ent = mnttbl; *ent; ent++)
|
/* No locking is needed, because the contents of /etc/mnttab is generated by the kernel. */
|
||||||
|
|
||||||
|
errno = 0;
|
||||||
|
fp = fopen (table, "r");
|
||||||
|
if (fp == NULL)
|
||||||
|
ret = errno;
|
||||||
|
else
|
||||||
{
|
{
|
||||||
me = g_malloc (sizeof (*me));
|
while ((ret = getextmntent (fp, &mnt, 1)) == 0)
|
||||||
me->me_devname = g_strdup ((*ent)->mt_resource);
|
{
|
||||||
me->me_mountdir = g_strdup ((*ent)->mt_directory);
|
me = g_malloc (sizeof *me);
|
||||||
me->me_mntroot = NULL;
|
me->me_devname = g_strdup (mnt.mnt_special);
|
||||||
me->me_type = g_strdup ((*ent)->mt_fstype);
|
me->me_mountdir = g_strdup (mnt.mnt_mountp);
|
||||||
me->me_type_malloced = 1;
|
me->me_mntroot = NULL;
|
||||||
me->me_dummy = ME_DUMMY (me->me_devname, me->me_type);
|
me->me_type = g_strdup (mnt.mnt_fstype);
|
||||||
me->me_remote = ME_REMOTE (me->me_devname, me->me_type);
|
me->me_type_malloced = 1;
|
||||||
me->me_dev = (dev_t) (-1); /* Magic; means not known yet. */
|
me->me_dummy = MNT_IGNORE (&mnt) != 0;
|
||||||
|
me->me_remote = ME_REMOTE (me->me_devname, me->me_type);
|
||||||
|
me->me_dev = makedev (mnt.mnt_major, mnt.mnt_minor);
|
||||||
|
|
||||||
mount_list = g_slist_prepend (mount_list, me);
|
mount_list = g_slist_prepend (mount_list, me);
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = fclose (fp) == EOF ? errno : 0 < ret ? 0 : -1;
|
||||||
|
/* Here ret = -1 means success, ret >= 0 means failure. */
|
||||||
}
|
}
|
||||||
endmnttbl ();
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef MOUNTED_GETMNTENT2 /* SVR4. */
|
if (ret >= 0)
|
||||||
|
{
|
||||||
|
errno = ret;
|
||||||
|
goto free_then_fail;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif /* MOUNTED_GETEXTMNTENT */
|
||||||
|
|
||||||
|
#ifdef MOUNTED_GETMNTENT2 /* Solaris < 8, also (obsolete) SVR4 */
|
||||||
{
|
{
|
||||||
struct mnttab mnt;
|
struct mnttab mnt;
|
||||||
char *table = MNTTAB;
|
const char *table = MNTTAB;
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
int ret;
|
int ret;
|
||||||
int lockfd = -1;
|
int lockfd = -1;
|
||||||
@ -1155,6 +1064,7 @@ read_file_system_list (void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
ret = fclose (fp) == EOF ? errno : 0 < ret ? 0 : -1;
|
ret = fclose (fp) == EOF ? errno : 0 < ret ? 0 : -1;
|
||||||
|
/* Here ret = -1 means success, ret >= 0 means failure. */
|
||||||
}
|
}
|
||||||
|
|
||||||
if (lockfd >= 0 && close (lockfd) != 0)
|
if (lockfd >= 0 && close (lockfd) != 0)
|
||||||
@ -1168,7 +1078,7 @@ read_file_system_list (void)
|
|||||||
}
|
}
|
||||||
#endif /* MOUNTED_GETMNTENT2. */
|
#endif /* MOUNTED_GETMNTENT2. */
|
||||||
|
|
||||||
#ifdef MOUNTED_VMOUNT /* AIX. */
|
#ifdef MOUNTED_VMOUNT /* AIX */
|
||||||
{
|
{
|
||||||
int bufsize;
|
int bufsize;
|
||||||
void *entries;
|
void *entries;
|
||||||
@ -1233,7 +1143,7 @@ read_file_system_list (void)
|
|||||||
}
|
}
|
||||||
#endif /* MOUNTED_VMOUNT. */
|
#endif /* MOUNTED_VMOUNT. */
|
||||||
|
|
||||||
#ifdef MOUNTED_INTERIX_STATVFS
|
#ifdef MOUNTED_INTERIX_STATVFS /* Interix */
|
||||||
{
|
{
|
||||||
DIR *dirp = opendir ("/dev/fs");
|
DIR *dirp = opendir ("/dev/fs");
|
||||||
char node[9 + NAME_MAX];
|
char node[9 + NAME_MAX];
|
||||||
@ -1438,21 +1348,6 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
|
|||||||
: PROPAGATE_ALL_ONES (fsd.f_bsize);
|
: PROPAGATE_ALL_ONES (fsd.f_bsize);
|
||||||
/* *INDENT-ON* */
|
/* *INDENT-ON* */
|
||||||
|
|
||||||
#elif defined STAT_STATFS2_FS_DATA /* Ultrix */
|
|
||||||
|
|
||||||
struct fs_data fsd;
|
|
||||||
|
|
||||||
if (statfs (file, &fsd) != 1)
|
|
||||||
return -1;
|
|
||||||
|
|
||||||
fsp->fsu_blocksize = 1024;
|
|
||||||
fsp->fsu_blocks = PROPAGATE_ALL_ONES (fsd.fd_req.btot);
|
|
||||||
fsp->fsu_bfree = PROPAGATE_ALL_ONES (fsd.fd_req.bfree);
|
|
||||||
fsp->fsu_bavail = PROPAGATE_TOP_BIT (fsd.fd_req.bfreen);
|
|
||||||
fsp->fsu_bavail_top_bit_set = EXTRACT_TOP_BIT (fsd.fd_req.bfreen) != 0;
|
|
||||||
fsp->fsu_files = PROPAGATE_ALL_ONES (fsd.fd_req.gtot);
|
|
||||||
fsp->fsu_ffree = PROPAGATE_ALL_ONES (fsd.fd_req.gfree);
|
|
||||||
|
|
||||||
#elif defined STAT_STATFS3_OSF1 /* OSF/1 */
|
#elif defined STAT_STATFS3_OSF1 /* OSF/1 */
|
||||||
|
|
||||||
struct statfs fsd;
|
struct statfs fsd;
|
||||||
@ -1506,12 +1401,7 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
|
|||||||
|
|
||||||
fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_fsize);
|
fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_fsize);
|
||||||
|
|
||||||
#elif defined STAT_STATFS4 /* SVR3, Dynix, old Irix, old AIX, \
|
#elif defined STAT_STATFS4 /* SVR3, old Irix */
|
||||||
Dolphin */
|
|
||||||
|
|
||||||
#if !defined _AIX && !defined _SEQUENT_ && !defined DOLPHIN
|
|
||||||
#define f_bavail f_bfree
|
|
||||||
#endif
|
|
||||||
|
|
||||||
struct statfs fsd;
|
struct statfs fsd;
|
||||||
|
|
||||||
@ -1521,7 +1411,7 @@ get_fs_usage (char const *file, char const *disk, struct fs_usage *fsp)
|
|||||||
/* Empirically, the block counts on most SVR3 and SVR3-derived
|
/* Empirically, the block counts on most SVR3 and SVR3-derived
|
||||||
systems seem to always be in terms of 512-byte blocks,
|
systems seem to always be in terms of 512-byte blocks,
|
||||||
no matter what value f_bsize has. */
|
no matter what value f_bsize has. */
|
||||||
#if defined _AIX || defined _CRAY
|
#if defined _CRAY
|
||||||
fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_bsize);
|
fsp->fsu_blocksize = PROPAGATE_ALL_ONES (fsd.f_bsize);
|
||||||
#else
|
#else
|
||||||
fsp->fsu_blocksize = 512;
|
fsp->fsu_blocksize = 512;
|
||||||
|
@ -4233,7 +4233,7 @@ panel_clean_dir (WPanel * panel)
|
|||||||
panel->content_shift = -1;
|
panel->content_shift = -1;
|
||||||
panel->max_shift = -1;
|
panel->max_shift = -1;
|
||||||
|
|
||||||
dir_list_clean (&panel->dir);
|
dir_list_free_list (&panel->dir);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
|
@ -189,8 +189,6 @@ init_panelize (void)
|
|||||||
INPUT_COMPLETE_SHELL_ESC);
|
INPUT_COMPLETE_SHELL_ESC);
|
||||||
add_widget (panelize_dlg, pname);
|
add_widget (panelize_dlg, pname);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
add_widget (panelize_dlg, hline_new (y++, -1, -1));
|
add_widget (panelize_dlg, hline_new (y++, -1, -1));
|
||||||
|
|
||||||
x = (panelize_cols - blen) / 2;
|
x = (panelize_cols - blen) / 2;
|
||||||
@ -222,11 +220,11 @@ panelize_done (void)
|
|||||||
static void
|
static void
|
||||||
add2panelize (char *label, char *command)
|
add2panelize (char *label, char *command)
|
||||||
{
|
{
|
||||||
struct panelize *current, *old;
|
struct panelize *current;
|
||||||
|
struct panelize *old = NULL;
|
||||||
|
|
||||||
old = NULL;
|
|
||||||
current = panelize;
|
current = panelize;
|
||||||
while (current && strcmp (current->label, label) <= 0)
|
while (current != NULL && strcmp (current->label, label) <= 0)
|
||||||
{
|
{
|
||||||
old = current;
|
old = current;
|
||||||
current = current->next;
|
current = current->next;
|
||||||
@ -242,6 +240,7 @@ add2panelize (char *label, char *command)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
struct panelize *new;
|
struct panelize *new;
|
||||||
|
|
||||||
new = g_new (struct panelize, 1);
|
new = g_new (struct panelize, 1);
|
||||||
new->label = label;
|
new->label = label;
|
||||||
new->command = command;
|
new->command = command;
|
||||||
@ -277,18 +276,16 @@ remove_from_panelize (struct panelize *entry)
|
|||||||
if (strcmp (entry->label, _("Other command")) != 0)
|
if (strcmp (entry->label, _("Other command")) != 0)
|
||||||
{
|
{
|
||||||
if (entry == panelize)
|
if (entry == panelize)
|
||||||
{
|
|
||||||
panelize = panelize->next;
|
panelize = panelize->next;
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
struct panelize *current = panelize;
|
struct panelize *current = panelize;
|
||||||
while (current && current->next != entry)
|
|
||||||
|
while (current != NULL && current->next != entry)
|
||||||
current = current->next;
|
current = current->next;
|
||||||
if (current)
|
|
||||||
{
|
if (current != NULL)
|
||||||
current->next = entry->next;
|
current->next = entry->next;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
g_free (entry->label);
|
g_free (entry->label);
|
||||||
@ -302,16 +299,12 @@ remove_from_panelize (struct panelize *entry)
|
|||||||
static void
|
static void
|
||||||
do_external_panelize (char *command)
|
do_external_panelize (char *command)
|
||||||
{
|
{
|
||||||
int link_to_dir, stale_link;
|
|
||||||
struct stat st;
|
|
||||||
dir_list *list = ¤t_panel->dir;
|
dir_list *list = ¤t_panel->dir;
|
||||||
char line[MC_MAXPATHLEN];
|
|
||||||
char *name;
|
|
||||||
FILE *external;
|
FILE *external;
|
||||||
|
|
||||||
open_error_pipe ();
|
open_error_pipe ();
|
||||||
external = popen (command, "r");
|
external = popen (command, "r");
|
||||||
if (!external)
|
if (external == NULL)
|
||||||
{
|
{
|
||||||
close_error_pipe (D_ERROR, _("Cannot invoke command."));
|
close_error_pipe (D_ERROR, _("Cannot invoke command."));
|
||||||
return;
|
return;
|
||||||
@ -325,22 +318,29 @@ do_external_panelize (char *command)
|
|||||||
|
|
||||||
while (TRUE)
|
while (TRUE)
|
||||||
{
|
{
|
||||||
|
char line[MC_MAXPATHLEN];
|
||||||
|
size_t len;
|
||||||
|
char *name;
|
||||||
|
int link_to_dir, stale_link;
|
||||||
|
struct stat st;
|
||||||
|
|
||||||
clearerr (external);
|
clearerr (external);
|
||||||
if (fgets (line, sizeof (line), external) == NULL)
|
if (fgets (line, sizeof (line), external) == NULL)
|
||||||
{
|
{
|
||||||
if (ferror (external) && errno == EINTR)
|
if (ferror (external) != 0 && errno == EINTR)
|
||||||
continue;
|
continue;
|
||||||
else
|
break;
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
if (line[strlen (line) - 1] == '\n')
|
|
||||||
line[strlen (line) - 1] = 0;
|
len = strlen (line);
|
||||||
if (strlen (line) < 1)
|
if (line[len - 1] == '\n')
|
||||||
|
line[len - 1] = '\0';
|
||||||
|
if (line[0] == '\0')
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
|
name = line;
|
||||||
if (line[0] == '.' && IS_PATH_SEP (line[1]))
|
if (line[0] == '.' && IS_PATH_SEP (line[1]))
|
||||||
name = line + 2;
|
name += 2;
|
||||||
else
|
|
||||||
name = line;
|
|
||||||
|
|
||||||
if (!handle_path (name, &st, &link_to_dir, &stale_link))
|
if (!handle_path (name, &st, &link_to_dir, &stale_link))
|
||||||
continue;
|
continue;
|
||||||
@ -635,15 +635,14 @@ load_panelize (void)
|
|||||||
void
|
void
|
||||||
save_panelize (void)
|
save_panelize (void)
|
||||||
{
|
{
|
||||||
struct panelize *current = panelize;
|
struct panelize *current;
|
||||||
|
|
||||||
mc_config_del_group (mc_global.main_config, panelize_section);
|
mc_config_del_group (mc_global.main_config, panelize_section);
|
||||||
for (; current; current = current->next)
|
|
||||||
{
|
for (current = panelize; current != NULL; current = current->next)
|
||||||
if (strcmp (current->label, _("Other command")))
|
if (strcmp (current->label, _("Other command")) != 0)
|
||||||
mc_config_set_string (mc_global.main_config,
|
mc_config_set_string (mc_global.main_config,
|
||||||
panelize_section, current->label, current->command);
|
panelize_section, current->label, current->command);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------------------------- */
|
/* --------------------------------------------------------------------------------------------- */
|
||||||
@ -651,10 +650,9 @@ save_panelize (void)
|
|||||||
void
|
void
|
||||||
done_panelize (void)
|
done_panelize (void)
|
||||||
{
|
{
|
||||||
struct panelize *current = panelize;
|
struct panelize *current, *next;
|
||||||
struct panelize *next;
|
|
||||||
|
|
||||||
for (; current; current = next)
|
for (current = panelize; current != NULL; current = next)
|
||||||
{
|
{
|
||||||
next = current->next;
|
next = current->next;
|
||||||
g_free (current->label);
|
g_free (current->label);
|
||||||
|
@ -197,10 +197,6 @@
|
|||||||
#include <sys/statfs.h>
|
#include <sys/statfs.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_DUSTAT_H
|
|
||||||
#include <sys/dustat.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HAVE_SYS_STATVFS_H
|
#ifdef HAVE_SYS_STATVFS_H
|
||||||
#include <sys/statvfs.h>
|
#include <sys/statvfs.h>
|
||||||
#endif
|
#endif
|
||||||
@ -544,10 +540,6 @@
|
|||||||
#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
|
#define O_ACCMODE (O_RDONLY | O_WRONLY | O_RDWR)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(HAVE_CRYPT16) && defined(HAVE_GETAUTHUID)
|
|
||||||
#define ULTRIX_AUTH 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef HAVE_INITGROUPS
|
#ifndef HAVE_INITGROUPS
|
||||||
int initgroups (char *name, gid_t id);
|
int initgroups (char *name, gid_t id);
|
||||||
#endif
|
#endif
|
||||||
|
@ -247,10 +247,9 @@ mcview_done (WView * view)
|
|||||||
if (mc_global.mc_run_mode == MC_RUN_VIEWER && view->dir != NULL)
|
if (mc_global.mc_run_mode == MC_RUN_VIEWER && view->dir != NULL)
|
||||||
{
|
{
|
||||||
/* mcviewer is the owner of file list */
|
/* mcviewer is the owner of file list */
|
||||||
dir_list_clean (view->dir);
|
dir_list_free_list (view->dir);
|
||||||
g_free (view->dir->list);
|
|
||||||
g_free (view->dir_idx);
|
|
||||||
g_free (view->dir);
|
g_free (view->dir);
|
||||||
|
g_free (view->dir_idx);
|
||||||
}
|
}
|
||||||
|
|
||||||
view->dir = NULL;
|
view->dir = NULL;
|
||||||
|
Loading…
Reference in New Issue
Block a user