[Pkg-mc-commits] r97 - branch/new-utf8/debian/patches

winnie at alioth.debian.org winnie at alioth.debian.org
Wed Feb 27 16:52:58 UTC 2008


Author: winnie
Date: 2008-02-27 16:52:56 +0000 (Wed, 27 Feb 2008)
New Revision: 97

Modified:
   branch/new-utf8/debian/patches/33_escaping.patch
Log:
X-D


Modified: branch/new-utf8/debian/patches/33_escaping.patch
===================================================================
--- branch/new-utf8/debian/patches/33_escaping.patch	2008-02-27 16:49:51 UTC (rev 96)
+++ branch/new-utf8/debian/patches/33_escaping.patch	2008-02-27 16:52:56 UTC (rev 97)
@@ -1,173 +1,3 @@
-diff -Nurwd mc-4.6.2~pre1.orig/debian/patches/33_escaping.patch mc-4.6.2~pre1/debian/patches/33_escaping.patch
---- mc-4.6.2~pre1.orig/debian/patches/33_escaping.patch	2008-02-27 17:43:58.000000000 +0100
-+++ mc-4.6.2~pre1/debian/patches/33_escaping.patch	2008-02-27 17:49:06.000000000 +0100
-@@ -1,166 +0,0 @@
--diff -u -w -r1.141 util.c
----- ./src/util.c	25 Sep 2007 15:33:37 -0000	1.141
--+++ ./src/util.c	27 Feb 2008 15:38:13 -0000
--@@ -1525,3 +1525,58 @@
--     return (sep != NULL) ? sep + 1 : result;
-- }
-- 
--+/* Unescape paths or other strings for e.g the internal cd  */
--+char *
--+unescape_string ( const char * in ) {
--+	char * local = NULL;
--+	int i = 0;
--+	int j = 20;
--+	int k = 0;
--+
--+	local = g_malloc(j);
--+	
--+	for (i=0;i<=strlen(in);i++) {
--+		if (i-k >= j ) {
--+			j = j + 20;
--+			local = g_realloc(local,j);
--+		}
--+		if ( (strchr(" \t*|;<>",in[i])) && ( strchr("\\",in[i-1])) ) {
--+			k++;
--+			local[i-k] = in[i];
--+		} else {
--+			local[i-k] = in[i];
--+		}
--+	}
--+	local[i-k] = '\0';
--+		
--+	return local;
--+}
--+
--+/* To be compatible with the general posix command lines we have to escape *
--+ * strings for the command line											   */
--+char *
--+escape_string ( const char * in ) {
--+	char * local = NULL;
--+	int i = 0;
--+	int j = 20;
--+	int k = 0;
--+
--+	local = g_malloc(j);
--+
--+	for (i=0;i<strlen(in);i++) {
--+		if (i+k >= j ) { //If 20 chars is too low for the path
--+			j = j + 20;
--+			local = g_realloc(local,j);
--+		}
--+		if ( (strchr(" \t*|;<>",in[i])) && (! strchr("\\",in[i-1])) ) {
--+			local[i+k] = 92; // Ascii for "\"
--+			k = k+1;
--+			local[i+k] = in[i];
--+		} else {
--+			local[i+k] = in[i];
--+		}
--+	}
--+	local[i+k] = '\0';
--+
--+	return local;
--+}
--diff -u -w -r1.78 util.h
----- ./src/util.h	3 Feb 2006 17:04:17 -0000	1.78
--+++ ./src/util.h	27 Feb 2008 15:38:13 -0000
--@@ -14,6 +14,8 @@
-- extern const char *cstrcasestr (const char *haystack, const char *needle);
-- extern const char *cstrstr (const char *haystack, const char *needle);
-- 
--+char *unescape_string ( const char * in );
--+char *escape_string ( const char * in );
-- void str_replace(char *s, char from, char to);
-- int  is_printable (int c);
-- void msglen (const char *text, /*@out@*/ int *lines, /*@out@*/ int *columns);
--diff -u -w -r1.151 file.c
----- ./src/file.c	25 Sep 2007 15:33:36 -0000	1.151
--+++ ./src/file.c	27 Feb 2008 15:38:14 -0000
--@@ -63,6 +63,7 @@
-- #include "widget.h"
-- #include "wtools.h"
-- #include "background.h"		/* we_are_background */
--+#include "util.h"
-- 
-- /* Needed for current_panel, other_panel and WTree */
-- #include "dir.h"
--@@ -456,7 +457,7 @@
-- };
-- 
-- int
---copy_file_file (FileOpContext *ctx, const char *src_path, const char *dst_path,
--+copy_file_file (FileOpContext *ctx, const char *s, const char *d,
-- 		int ask_overwrite, off_t *progress_count,
-- 		double *progress_bytes, int is_toplevel_file)
-- {
--@@ -464,6 +465,8 @@
--     gid_t src_gid = (gid_t) - 1;
-- 
--     char *buf = NULL;
--+    const char *dst_path = NULL;
--+    const char *src_path = NULL;
--     int buf_size = BUF_8K;
--     int src_desc, dest_desc = -1;
--     int n_read, n_written;
--@@ -479,7 +482,8 @@
--     /* FIXME: We should not be using global variables! */
--     ctx->do_reget = 0;
--     return_status = FILE_RETRY;
---
--+    dst_path = unescape_string(d);
--+    src_path = unescape_string(s);
--     if (file_progress_show_source (ctx, src_path) == FILE_ABORT ||
-- 	file_progress_show_target (ctx, dst_path) == FILE_ABORT)
-- 	return FILE_ABORT;
--diff -u -w -r1.61 complete.c
----- ./src/complete.c	25 Sep 2007 15:33:36 -0000	1.61
--+++ ./src/complete.c	27 Feb 2008 15:38:14 -0000
--@@ -40,6 +40,7 @@
-- #include "wtools.h"
-- #include "complete.h"
-- #include "main.h"
--+#include "util.h"
-- #include "key.h"		/* XCTRL and ALT macros */
-- 
-- typedef char *CompletionFunction (char *, int);
--@@ -911,6 +912,7 @@
-- static int
-- complete_engine (WInput *in, int what_to_do)
-- {
--+    char *complete = NULL;
--     if (in->completions && in->point != end)
--     	free_completions (in);
--     if (!in->completions){
--@@ -924,7 +926,8 @@
--     }
--     if (in->completions){
--     	if (what_to_do & DO_INSERTION || ((what_to_do & DO_QUERY) && !in->completions[1])) {
---    	    if (insert_text (in, in->completions [0], strlen (in->completions [0]))){
--+    	    complete = escape_string(in->completions [0]);
--+    	    if (insert_text (in, complete, strlen (complete))){
--     	        if (in->completions [1])
--     	    	    beep ();
-- 		else
--@@ -940,9 +943,11 @@
--     	    Dlg_head *query_dlg;
--     	    WListbox *query_list;
--     	    
---    	    for (p=in->completions + 1; *p; count++, p++)
--+    	    for (p=in->completions + 1; *p; count++, p++) {
--+    	    *p = escape_string(*p);
--     	    	if ((i = strlen (*p)) > maxlen)
--     	    	    maxlen = i;
--+			}
--     	    start_x = in->widget.x;
--     	    start_y = in->widget.y;
--     	    if (start_y - 2 >= count) {
--diff -u -w -r1.34 command.c
----- ./src/command.c	26 Sep 2007 10:22:25 -0000	1.34
--+++ ./src/command.c	27 Feb 2008 15:38:15 -0000
--@@ -64,6 +64,7 @@
--     const char *t;
-- 
--     /* Tilde expansion */
--+    path = unescape_string(path);
--     path_tilde = tilde_expand (path);
-- 
--     /* Leave space for further expansion */
 diff -Nurwd mc-4.6.2~pre1.orig/src/command.c mc-4.6.2~pre1/src/command.c
 --- mc-4.6.2~pre1.orig/src/command.c	2008-02-27 17:43:58.000000000 +0100
 +++ mc-4.6.2~pre1/src/command.c	2008-02-27 17:44:19.000000000 +0100




More information about the Pkg-mc-commits mailing list