File poppler-string-compare.patch of Package poppler

diff --git a/goo/GooString.cc b/goo/GooString.cc
index 036a432..2f1d7d5 100644
--- a/goo/GooString.cc
+++ b/goo/GooString.cc
@@ -663,11 +663,13 @@ GooString *GooString::lowerCase() {
 
 int GooString::cmp(GooString *str) {
   int n1, n2, i, x;
-  char *p1, *p2;
+  unsigned char *p1, *p2;
 
   n1 = length;
   n2 = str->length;
-  for (i = 0, p1 = s, p2 = str->s; i < n1 && i < n2; ++i, ++p1, ++p2) {
+  p1 = (unsigned char*)s;
+  p2 = (unsigned char*)str->s;
+  for (i = 0; i < n1 && i < n2; ++i, ++p1, ++p2) {
     x = *p1 - *p2;
     if (x != 0) {
       return x;
@@ -678,12 +680,13 @@ int GooString::cmp(GooString *str) {
 
 int GooString::cmpN(GooString *str, int n) {
   int n1, n2, i, x;
-  char *p1, *p2;
+  unsigned char *p1, *p2;
 
   n1 = length;
   n2 = str->length;
-  for (i = 0, p1 = s, p2 = str->s;
-       i < n1 && i < n2 && i < n;
+  p1 = (unsigned char*)s;
+  p2 = (unsigned char*)str->s;
+  for (i = 0; i < n1 && i < n2 && i < n;
        ++i, ++p1, ++p2) {
     x = *p1 - *p2;
     if (x != 0) {
@@ -698,10 +701,12 @@ int GooString::cmpN(GooString *str, int n) {
 
 int GooString::cmp(const char *sA) {
   int n1, i, x;
-  const char *p1, *p2;
+  const unsigned char *p1, *p2;
 
   n1 = length;
-  for (i = 0, p1 = s, p2 = sA; i < n1 && *p2; ++i, ++p1, ++p2) {
+  p1 = (unsigned char*)s;
+  p2 = (unsigned char*)sA;
+  for (i = 0; i < n1 && *p2; ++i, ++p1, ++p2) {
     x = *p1 - *p2;
     if (x != 0) {
       return x;
@@ -718,10 +723,12 @@ int GooString::cmp(const char *sA) {
 
 int GooString::cmpN(const char *sA, int n) {
   int n1, i, x;
-  const char *p1, *p2;
+  const unsigned char *p1, *p2;
 
   n1 = length;
-  for (i = 0, p1 = s, p2 = sA; i < n1 && *p2 && i < n; ++i, ++p1, ++p2) {
+  p1 = (unsigned char*)s;
+  p2 = (unsigned char*)sA;
+  for (i = 0; i < n1 && *p2 && i < n; ++i, ++p1, ++p2) {
     x = *p1 - *p2;
     if (x != 0) {
       return x;
openSUSE Build Service is sponsored by