Репозитории 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 |
Группа :: Работа с файлами
Пакет: 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';