diff options
Diffstat (limited to 'libre/mc-libre')
-rw-r--r-- | libre/mc-libre/PKGBUILD | 13 | ||||
-rw-r--r-- | libre/mc-libre/fs36962.diff | 77 |
2 files changed, 85 insertions, 5 deletions
diff --git a/libre/mc-libre/PKGBUILD b/libre/mc-libre/PKGBUILD index 3faac3646..e270f8d3d 100644 --- a/libre/mc-libre/PKGBUILD +++ b/libre/mc-libre/PKGBUILD @@ -1,11 +1,11 @@ -# $Id: PKGBUILD 95010 2013-08-03 09:40:52Z schuay $ +# $Id: PKGBUILD 97329 2013-09-18 07:33:03Z schuay $ # Contributor: Daniel J Griffiths <ghost1227@archlinux.us> # Maintainer: schuay <jakob.gruber@gmail.com> _pkgname=mc pkgname=mc-libre pkgver=4.8.10 -pkgrel=1 +pkgrel=2 pkgdesc="Midnight Commander is a text based filemanager/shell that emulates Norton Commander, with unar and arj recommendation included and nonfree unace recommendation removed" arch=('i686' 'x86_64') url="http://www.ibiblio.org/mc/" @@ -15,7 +15,6 @@ depends=( 'glib2' 'gpm' 'libssh2' - 'pcre' 'slang') makedepends=('libxt' 'libx11') optdepends=( @@ -45,11 +44,14 @@ backup=('etc/mc/edit.indent.rc' 'etc/mc/mc.keymap' 'etc/mc/mc.menu' 'etc/mc/sfs.ini') -source=("http://www.midnight-commander.org/downloads/${_pkgname}-${pkgver}.tar.bz2") +source=("http://www.midnight-commander.org/downloads/${_pkgname}-${pkgver}.tar.bz2" + "fs36962.diff") build() { cd "${srcdir}/${_pkgname}-${pkgver}" + patch -Np1 < "${srcdir}/fs36962.diff" + ./configure --prefix=/usr --sysconfdir=/etc --enable-vfs-smb \ --with-x --libexecdir=/usr/lib @@ -69,4 +71,5 @@ package() { -i "${pkgdir}/usr/lib/mc/extfs.d/s3+" } -md5sums=('eb4bdc23abd4fdfa14911d53d65c8186') +md5sums=('eb4bdc23abd4fdfa14911d53d65c8186' + '7f7cf5388a5390c2ed49965492f490aa') diff --git a/libre/mc-libre/fs36962.diff b/libre/mc-libre/fs36962.diff new file mode 100644 index 000000000..0db5ed42b --- /dev/null +++ b/libre/mc-libre/fs36962.diff @@ -0,0 +1,77 @@ +diff -ur mc-4.8.10-orig/src/filemanager/file.c mc-4.8.10/src/filemanager/file.c +--- mc-4.8.10-orig/src/filemanager/file.c 2013-08-02 22:02:40.000000000 +0400 ++++ mc-4.8.10/src/filemanager/file.c 2013-09-17 09:59:30.699635407 +0400 +@@ -1272,8 +1272,8 @@ + + /** Initialize variables for progress bars */ + static FileProgressStatus +-panel_operate_init_totals (FileOperation operation, const WPanel * panel, const char *source, +- FileOpContext * ctx, filegui_dialog_type_t dialog_type) ++panel_operate_init_totals (const WPanel * panel, const char *source, FileOpContext * ctx, ++ filegui_dialog_type_t dialog_type) + { + FileProgressStatus status; + +@@ -1282,7 +1282,7 @@ + return FILE_CONT; + #endif + +- if (operation != OP_MOVE && verbose && file_op_compute_totals) ++ if (verbose && file_op_compute_totals) + { + ComputeDirSizeUI *ui; + +@@ -2378,13 +2378,6 @@ + mc_refresh (); + if (ctx->erase_at_end) + { +- /* remove files after move */ +- if (erase_list != NULL) +- { +- file_op_context_destroy_ui (ctx); +- file_op_context_create_ui (ctx, FALSE, FILEGUI_DIALOG_DELETE_ITEM); +- } +- + while (erase_list != NULL && return_status != FILE_ABORT) + { + struct link *lp = (struct link *) erase_list->data; +@@ -2792,14 +2785,12 @@ + { + if (operation == OP_DELETE) + dialog_type = FILEGUI_DIALOG_DELETE_ITEM; ++ else if (single_entry && S_ISDIR (selection (panel)->st.st_mode)) ++ dialog_type = FILEGUI_DIALOG_MULTI_ITEM; ++ else if (single_entry || force_single) ++ dialog_type = FILEGUI_DIALOG_ONE_ITEM; + else +- { +- dialog_type = ((operation != OP_COPY) || single_entry || force_single) +- ? FILEGUI_DIALOG_ONE_ITEM : FILEGUI_DIALOG_MULTI_ITEM; +- +- if (single_entry && (operation == OP_COPY) && S_ISDIR (selection (panel)->st.st_mode)) +- dialog_type = FILEGUI_DIALOG_MULTI_ITEM; +- } ++ dialog_type = FILEGUI_DIALOG_MULTI_ITEM; + } + + /* Initialize things */ +@@ -2844,8 +2835,8 @@ + else + source_with_vpath = vfs_path_append_new (panel->cwd_vpath, source, (char *) NULL); + #endif /* WITH_FULL_PATHS */ +- if (panel_operate_init_totals +- (operation, panel, vfs_path_as_str (source_with_vpath), ctx, dialog_type) == FILE_CONT) ++ if (panel_operate_init_totals (panel, vfs_path_as_str (source_with_vpath), ctx, dialog_type) ++ == FILE_CONT) + { + if (operation == OP_DELETE) + { +@@ -2936,7 +2927,7 @@ + goto clean_up; + } + +- if (panel_operate_init_totals (operation, panel, NULL, ctx, dialog_type) == FILE_CONT) ++ if (panel_operate_init_totals (panel, NULL, ctx, dialog_type) == FILE_CONT) + { + /* Loop for every file, perform the actual copy operation */ + for (i = 0; i < panel->count; i++) |