View | Details | Raw Unified | Return to bug 58597
Collapse All | Expand All

(-)./dictd/Makefile (-2 / +2 lines)
Lines 12-19 Link Here
12
MASTERDIR=	${.CURDIR}/../../net/dictd
12
MASTERDIR=	${.CURDIR}/../../net/dictd
13
EXTRA_PATCHES=	${.CURDIR}/files/patch-index.c \
13
EXTRA_PATCHES=	${.CURDIR}/files/patch-index.c \
14
		${.CURDIR}/files/patch-libmaa::arg.c \
14
		${.CURDIR}/files/patch-libmaa::arg.c \
15
		${.CURDIR}/files/patch-dictfmt.c \
15
		${.CURDIR}/files/patch-dictfmt.c
16
		${.CURDIR}/files/patch-Makefile.in
16
#		${.CURDIR}/files/patch-Makefile.in
17
17
18
#pre-install:
18
#pre-install:
19
#	${ECHO_CMD} "bin/dictfmt" > ${PLIST}
19
#	${ECHO_CMD} "bin/dictfmt" > ${PLIST}
(-)./dictd/files/patch-Makefile.in (-10 lines)
Lines 1-10 Link Here
1
--- Makefile.in.orig	Sun Nov 24 02:01:29 2002
2
+++ Makefile.in	Sun Nov 24 02:01:44 2002
3
@@ -154,7 +154,6 @@
4
 	if test ! -d $(bindir); then $(INSTALL) -d 755 $(bindir); fi
5
 	if test ! -d $(man1_prefix); then $(INSTALL) -d 755 $(man1_prefix); fi
6
 	$(INSTALL_PROGRAM) dictfmt $(bindir)
7
-	$(INSTALL_PROGRAM) dictfmt_index2suffix $(bindir)
8
 	$(INSTALL_DATA) dictfmt.1 $(man1_prefix)/dictfmt.1
9
 
10
 install.dictd: dictd
(-)./dictd/files/patch-dictfmt.c (-7 / +7 lines)
Lines 1-14 Link Here
1
--- dictfmt.c.orig	Sun Nov 24 01:25:09 2002
1
--- dictfmt.c.orig	Tue Feb 11 03:08:33 2003
2
+++ dictfmt.c	Sun Nov 24 01:25:23 2002
2
+++ dictfmt.c	Mon Oct 27 22:03:33 2003
3
@@ -208,6 +208,12 @@
3
@@ -213,6 +213,12 @@
4
 
4
 
5
    while (src && src [0]){
5
    while (src && src [0]){
6
       ch = *(const unsigned char *)src;
6
       ch = *(const unsigned char *)src;
7
+      if((ch & 0x80) && *(src+1)) {
7
+      if((ch & 0x80) && *(src+1)) {
8
+	 *dest++ = ch;
8
+        *dest++ = ch;
9
+	 *dest++ = *(src+1);
9
+        *dest++ = *(src+1);
10
+	 src+=2;
10
+        src+=2;
11
+	 continue;
11
+        continue;
12
+      }
12
+      }
13
 
13
 
14
       if (isspace (ch)){
14
       if (isspace (ch)){
(-)./dictd/files/patch-index.c (-20 / +20 lines)
Lines 1-36 Link Here
1
--- index.c.orig	Sun Nov 24 01:24:10 2002
1
--- index.c.orig	Mon Mar 10 01:06:16 2003
2
+++ index.c	Sun Nov 24 01:24:21 2002
2
+++ index.c	Mon Oct 27 22:10:18 2003
3
@@ -91,6 +91,12 @@
3
@@ -103,6 +103,12 @@
4
 
4
 
5
    for (; *src; ++src) {
5
    for (; *src; ++src) {
6
       c = * (const unsigned char *) src;
6
       c = * (const unsigned char *) src;
7
+      if((c & 0x80) && *(src+1)) {
7
+      if((c & 0x80) && *(src+1)) {
8
+	 *dest++ = c;
8
+        *dest++ = c;
9
+	 *dest++ = *(src+1);
9
+        *dest++ = *(src+1);
10
+	 src++;
10
+        src++;
11
+	 continue;
11
+        continue;
12
+      }
12
+      }
13
 
13
 
14
       if (isspace( c )) {
14
       if (isspace( c )) {
15
          *dest++ = ' ';
15
          *dest++ = ' ';
16
@@ -150,7 +156,7 @@
16
@@ -184,7 +190,7 @@
17
     isspacealnumtab_allchars['\t'] = isspacealnumtab_allchars['\n'] = 0; /* special */
18
 
17
 
19
     for (i = 0; i <= UCHAR_MAX; i++){
18
    charcount = 0;
20
-	if (islower (i) || (utf8_mode && i >= 0xC0))
19
    for (i = 0; i <= UCHAR_MAX; i++){
21
+	if (islower (i) || (utf8_mode && i >= 0xC0) || (i>=0x80))
20
-      if (islower (i) || (utf8_mode && i >= 0xC0))
22
 	    chartab[charcount++] = i;
21
+      if (islower (i) || (utf8_mode && i >= 0xC0) || (i>=0x80))
23
     }
22
 	 chartab [charcount++] = i;
23
    }
24
 
24
 
25
@@ -317,6 +326,15 @@
25
@@ -293,6 +299,15 @@
26
 
26
 
27
    /* FIXME.  Optimize this inner loop. */
27
    /* FIXME.  Optimize this inner loop. */
28
    while (*word && start < end && *start != '\t') {
28
    while (*word && start < end && *start != '\t') {
29
+      if ((*start & 0x80) && start+1<end && start[1]!='\t') {
29
+      if ((*start & 0x80) && start+1<end && start[1]!='\t') {
30
+        if(start[0]!=word[0]) 
30
+        if(start[0]!=word[0])
31
+	  return ((unsigned)word[0]<(unsigned)start[0])?-2:1;
31
+         return ((unsigned)word[0]<(unsigned)start[0])?-2:1;
32
+        if(start[1]!=word[1]) 
32
+        if(start[1]!=word[1])
33
+	  return ((unsigned)word[1]<(unsigned)start[1])?-2:1;
33
+         return ((unsigned)word[1]<(unsigned)start[1])?-2:1;
34
+        word+=2;
34
+        word+=2;
35
+        start+=2;
35
+        start+=2;
36
+        continue;
36
+        continue;
Lines 38-44 Link Here
38
       if (!dbindex -> isspacealnum[* (const unsigned char *) start]) {
38
       if (!dbindex -> isspacealnum[* (const unsigned char *) start]) {
39
 	 ++start;
39
 	 ++start;
40
 	 continue;
40
 	 continue;
41
@@ -359,6 +377,8 @@
41
@@ -340,6 +355,8 @@
42
        *start != '\t' &&
42
        *start != '\t' &&
43
        !dbindex -> isspacealnum[* (const unsigned char *) start])
43
        !dbindex -> isspacealnum[* (const unsigned char *) start])
44
    {
44
    {
(-)./dictd/files/patch-libmaa::arg.c (-5 / +5 lines)
Lines 1-12 Link Here
1
--- libmaa/arg.c.orig	Wed Jul 17 05:21:04 2002
1
--- libmaa/arg.c.orig	Sat Aug  3 03:43:15 2002
2
+++ libmaa/arg.c	Wed Jul 17 05:13:50 2002
2
+++ libmaa/arg.c	Mon Oct 27 22:11:11 2003
3
@@ -216,6 +216,9 @@
3
@@ -216,6 +216,9 @@
4
       ++pt;
4
       ++pt;
5
 
5
 
6
    for (last = pt, len = 0; *pt; ++pt, ++len) {
6
    for (last = pt, len = 0; *pt; ++pt, ++len) {
7
+     if((*pt & 0x80) && pt[1]) {
7
+      if((*pt & 0x80) && pt[1]) {
8
+       ++pt, ++len;
8
+        ++pt, ++len;
9
+     } else
9
+      } else
10
       switch (*pt) {
10
       switch (*pt) {
11
       case ' ':
11
       case ' ':
12
       case '\t':
12
       case '\t':

Return to bug 58597