Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37396942
en ru br
Репозитории ALT
S:3.7.20050808-alt2.qa1.1
5.1: 3.7.20050808-alt1.1.1
4.1: 3.7.20050808-alt1.1
4.0: 3.7.20050808-alt1.1
3.0: 2.7-alt5
www.altlinux.org/Changes

Группа :: Работа с файлами
Пакет: mtree

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

Патч: mtree-3.7.20050808-freebsd-owl-vis.patch
Скачать


diff -urpN mtree-3.7.20050808.orig/include/vis.h mtree-3.7.20050808-freebsd-vis/include/vis.h
--- mtree-3.7.20050808.orig/include/vis.h	Sun Oct 17 20:25:31 2004
+++ mtree-3.7.20050808-freebsd-vis/include/vis.h	Mon Aug  8 16:47:16 2005
@@ -55,6 +55,7 @@
  * other
  */
 #define	VIS_NOSLASH	0x40	/* inhibit printing '\' */
+#define	VIS_GLOB	0x100	/* encode glob(3) magics and '#' */
 
 /*
  * unvis return codes
diff -urpN mtree-3.7.20050808.orig/lib/libc/gen/vis.3 mtree-3.7.20050808-freebsd-vis/lib/libc/gen/vis.3
--- mtree-3.7.20050808.orig/lib/libc/gen/vis.3	Fri Feb 25 03:12:43 2005
+++ mtree-3.7.20050808-freebsd-vis/lib/libc/gen/vis.3	Mon Aug  8 16:39:02 2005
@@ -27,7 +27,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd June 9, 1993
+.Dd August 8, 2005
 .Dt VIS 3
 .Os
 .Sh NAME
@@ -163,6 +163,14 @@ except space, tab, and newline are encod
 The following flags
 alter this:
 .Bl -tag -width VIS_WHITEX
+.It Dv VIS_GLOB
+Also encode magic characters recognized by
+.Xr glob 3
+.Ql ( * ,
+.Ql \&? ,
+.Ql \&[ )
+and
+.Ql # .
 .It Dv VIS_SP
 Also encode space.
 .It Dv VIS_TAB
diff -urpN mtree-3.7.20050808.orig/lib/libc/gen/vis.c mtree-3.7.20050808-freebsd-vis/lib/libc/gen/vis.c
--- mtree-3.7.20050808.orig/lib/libc/gen/vis.c	Fri Mar 25 15:38:47 2005
+++ mtree-3.7.20050808-freebsd-vis/lib/libc/gen/vis.c	Mon Aug  8 17:51:28 2005
@@ -37,15 +37,19 @@ static char rcsid[] = "$OpenBSD: vis.c,v
 #include <string.h>
 #include <vis.h>
 
-#define	isoctal(c)	(((u_char)(c)) >= '0' && ((u_char)(c)) <= '7')
-#define isvisible(c)	(((u_int)(c) <= UCHAR_MAX && isascii((u_char)(c)) && \
-				isgraph((u_char)(c))) ||		     \
-				((flag & VIS_SP) == 0 && (c) == ' ') ||	     \
-				((flag & VIS_TAB) == 0 && (c) == '\t') ||    \
-				((flag & VIS_NL) == 0 && (c) == '\n') ||     \
-				((flag & VIS_SAFE) && ((c) == '\b' ||	     \
-				(c) == '\007' || (c) == '\r' ||		     \
-				isgraph((u_char)(c)))))
+#define isoctal(c) \
+	(((u_char)(c)) >= '0' && ((u_char)(c)) <= '7')
+#define isvisible(c) \
+	(((u_int)(c) <= UCHAR_MAX && isascii((u_char)(c))) &&		     \
+		(((((c) != '*' && (c) != '?' && (c) != '[' && (c) != '#') || \
+			(flag & VIS_GLOB) == 0) &&			     \
+			isgraph((u_char)(c))) ||			     \
+		((flag & VIS_SP) == 0 && (c) == ' ') ||			     \
+		((flag & VIS_TAB) == 0 && (c) == '\t') ||		     \
+		((flag & VIS_NL) == 0 && (c) == '\n') ||		     \
+		((flag & VIS_SAFE) && ((c) == '\b' ||			     \
+			(c) == '\007' || (c) == '\r' ||			     \
+			isgraph((u_char)(c))))))
 
 /*
  * vis - visually encode characters
@@ -105,7 +109,7 @@ vis(char *dst, int c, int flag, int next
 			goto done;
 		}
 	}
-	if (((c & 0177) == ' ') || (flag & VIS_OCTAL)) {	
+	if (((c & 0177) == ' ') || isgraph(c) || (flag & VIS_OCTAL)) {	
 		*dst++ = '\\';
 		*dst++ = ((u_char)c >> 6 & 07) + '0';
 		*dst++ = ((u_char)c >> 3 & 07) + '0';
 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin