File: 20_eval.c-utf-8-strcat.dpatch

package info (click to toggle)
gawk 1%3A3.1.5.dfsg-4.1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 9,152 kB
  • ctags: 3,545
  • sloc: ansic: 31,602; awk: 4,970; sh: 4,573; yacc: 2,634; makefile: 1,358; sed: 16
file content (45 lines) | stat: -rw-r--r-- 1,512 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#! /bin/sh -e
## 20_eval.c-utf-8-strcat.dpatch
##
## DP: Description: Fix handling of string concatenation with multi-byte strings. (#347490)
## DP: Author: Karel Zak and Aharon Robbins
## DP: Upstream status: Unclear - in discussion
## DP: URL: http://lists.gnu.org/archive/html/bug-gnu-utils/2006-02/msg00023.html
## DP: Date: 2006-02-10

if [ $# -lt 1 ]; then
    echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
    exit 1
fi

[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"

case "$1" in
    -patch) patch -p1 ${patch_opts} < $0;;
    -unpatch) patch -R -p1 ${patch_opts} < $0;;
    *)
        echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
        exit 1;;
esac

exit 0

@DPATCH@
diff -urNad --exclude=CVS --exclude=.svn ./eval.c /tmp/dpep-work.D8ZI7f/gawk-3.1.5/eval.c
--- ./eval.c	2006-04-18 03:07:14.000000000 +0100
+++ /tmp/dpep-work.D8ZI7f/gawk-3.1.5/eval.c	2006-04-18 03:07:52.000000000 +0100
@@ -1176,6 +1176,13 @@
 			memcpy(l->stptr + l->stlen, r->stptr, r->stlen);
 			l->stlen += r->stlen;
 			l->stptr[l->stlen] = '\0';
+#if defined MBS_SUPPORT
+                       if (l->wstptr != NULL)
+                               free(l->wstptr);
+                       l->wstptr = NULL;
+                       l->wstlen = 0;
+                       l->flags &= ~WSTRCUR;
+#endif /* MBS_SUPPORT */
 		} else {
 			char *nval;
 			size_t nlen = l->stlen + r->stlen + 2;