Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.1
xpdf
xpdf-fix-cut-and-paste-and-default-output-encod...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File xpdf-fix-cut-and-paste-and-default-output-encoding.patch of Package xpdf
diff -ur xpdf-orig/doc/pdfinfo.cat xpdf-3.02/doc/pdfinfo.cat --- xpdf-orig/doc/pdfinfo.cat 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/pdfinfo.cat 2007-08-06 14:13:39.000000000 +0200 @@ -72,9 +72,10 @@ -enc encoding-name Sets the encoding to use for text output. The encoding-name must be defined with the unicodeMap - command (see xpdfrc(5)). This defaults to "Latin1" - (which is a built-in encoding). [config file: tex- - tEncoding] + command (see xpdfrc(5)). This defaults to "UTF-8" + in UTF-8 locales, to "Latin1" in all other locales + ("UTF-8" and "Latin1" are built-in encodings). + [config file: textEncoding] -opw password Specify the owner password for the PDF file. Pro- diff -ur xpdf-orig/doc/pdfinfo.hlp xpdf-3.02/doc/pdfinfo.hlp --- xpdf-orig/doc/pdfinfo.hlp 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/pdfinfo.hlp 2007-08-06 14:13:39.000000000 +0200 @@ -74,9 +74,10 @@ -enc encoding-name Sets the encoding to use for text output. The encoding-name must be defined with the unicodeMap - command (see xpdfrc(5)). This defaults to "Latin1" - (which is a built-in encoding). [config file: tex- - tEncoding] + command (see xpdfrc(5)). This defaults to "UTF-8" + in UTF-8 locales, to "Latin1" in all other locales + ("UTF-8" and "Latin1" are built-in encodings). + [config file: textEncoding] -opw password Specify the owner password for the PDF file. Pro- diff -ur xpdf-orig/doc/pdfinfo.1 xpdf-3.02/doc/pdfinfo.1 --- xpdf-orig/doc/pdfinfo.1 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/pdfinfo.1 2007-08-06 14:13:39.000000000 +0200 @@ -102,7 +102,8 @@ .I encoding\-name must be defined with the unicodeMap command (see .BR xpdfrc (5)). -This defaults to "Latin1" (which is a built-in encoding). +This defaults to "UTF-8" in UTF-8 locales, to "Latin1" in all other +locales ("UTF-8" and "Latin1" are built-in encodings). .RB "[config file: " textEncoding ] .TP .BI \-opw " password" diff -ur xpdf-orig/doc/pdftotext.cat xpdf-3.02/doc/pdftotext.cat --- xpdf-orig/doc/pdftotext.cat 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/pdftotext.cat 2007-08-06 14:13:39.000000000 +0200 @@ -57,9 +57,10 @@ Sets the encoding to use for text output. The encoding-name must be defined with the unicodeMap command (see xpdfrc(5)). The encoding name is - case-sensitive. This defaults to "Latin1" (which - is a built-in encoding). [config file: textEncod- - ing] + case-sensitive. It defaults to "UTF-8" in UTF-8 + locales, to "Latin1" in all other locales ("UTF-8" + and "Latin1" are built-in encodings). [config + file: textEncoding] -eol unix | dos | mac Sets the end-of-line convention to use for text diff -ur xpdf-orig/doc/pdftotext.hlp xpdf-3.02/doc/pdftotext.hlp --- xpdf-orig/doc/pdftotext.hlp 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/pdftotext.hlp 2007-08-06 14:13:39.000000000 +0200 @@ -59,9 +59,10 @@ Sets the encoding to use for text output. The encoding-name must be defined with the unicodeMap command (see xpdfrc(5)). The encoding name is - case-sensitive. This defaults to "Latin1" (which - is a built-in encoding). [config file: textEncod- - ing] + case-sensitive. This defaults to "UTF-8" in UTF-8 + locales, to "Latin1" in all other locales ("UTF-8 + and "Latin1" are built-in encodings). [config file: + textEncoding] -eol unix | dos | mac Sets the end-of-line convention to use for text diff -ur xpdf-orig/doc/pdftotext.1 xpdf-3.02/doc/pdftotext.1 --- xpdf-orig/doc/pdftotext.1 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/pdftotext.1 2007-08-06 14:13:39.000000000 +0200 @@ -64,8 +64,9 @@ .I encoding\-name must be defined with the unicodeMap command (see .BR xpdfrc (5)). -The encoding name is case-sensitive. This defaults to "Latin1" (which -is a built-in encoding). +The encoding name is case-sensitive. It defaults to "UTF-8" in UTF-8 +locales, to "Latin1" in all other locales ("UTF-8" and "Latin1" are +built-in encodings). .RB "[config file: " textEncoding ] .TP .BI \-eol " unix | dos | mac" diff -ur xpdf-orig/doc/xpdf.cat xpdf-3.02/doc/xpdf.cat --- xpdf-orig/doc/xpdf.cat 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/xpdf.cat 2007-08-06 14:13:39.000000000 +0200 @@ -146,9 +146,10 @@ -enc encoding-name Sets the encoding to use for text output. The encoding-name must be defined with the unicodeMap - command (see xpdfrc(5)). This defaults to "Latin1" - (which is a built-in encoding). [config file: tex- - tEncoding] + command (see xpdfrc(5)). This defaults to "UTF-8" + in UTF-8 locales, to "Latin1" in all other locales. + ("UTF-8" and "Latin1" are built-in encodings). + [config file: textEncoding] -eol unix | dos | mac Sets the end-of-line convention to use for text Pouze v xpdf-3.02/doc: xpdf.cat.orig diff -ur xpdf-orig/doc/xpdf.hlp xpdf-3.02/doc/xpdf.hlp --- xpdf-orig/doc/xpdf.hlp 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/xpdf.hlp 2007-08-06 14:13:39.000000000 +0200 @@ -148,9 +148,10 @@ -enc encoding-name Sets the encoding to use for text output. The encoding-name must be defined with the unicodeMap - command (see xpdfrc(5)). This defaults to "Latin1" - (which is a built-in encoding). [config file: tex- - tEncoding] + command (see xpdfrc(5)). This defaults to "UTF-8" + in UTF-8 locales, to "Latin1" in all other locales + ("UTF-8" and "Latin1" are built-in encodings). + [config file: textEncoding] -eol unix | dos | mac Sets the end-of-line convention to use for text Pouze v xpdf-3.02/doc: xpdf.hlp.orig diff -ur xpdf-orig/doc/xpdfrc.cat xpdf-3.02/doc/xpdfrc.cat --- xpdf-orig/doc/xpdfrc.cat 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/xpdfrc.cat 2007-08-06 14:14:16.000000000 +0200 @@ -317,7 +317,8 @@ can be overridden with the "-enc" switch on the command line.) The encoding-name must be defined with the unicodeMap command (see above). This - defaults to "Latin1". + defaults to "UTF-8" in UTF-8 locales, to "Latin1" + in all other locales. textEOL unix | dos | mac Sets the end-of-line convention to use for text Pouze v xpdf-3.02/doc: xpdfrc.cat.orig diff -ur xpdf-orig/doc/xpdfrc.hlp xpdf-3.02/doc/xpdfrc.hlp --- xpdf-orig/doc/xpdfrc.hlp 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/xpdfrc.hlp 2007-08-06 14:13:39.000000000 +0200 @@ -309,7 +309,8 @@ can be overridden with the "-enc" switch on the command line.) The encoding-name must be defined with the unicodeMap command (see above). This - defaults to "Latin1". + defaults to "UTF-8" in UTF-8 locales, to "Latin1" + in all other locales. textEOL unix | dos | mac Sets the end-of-line convention to use for text Pouze v xpdf-3.02/doc: xpdfrc.hlp.orig diff -ur xpdf-orig/doc/xpdfrc.5 xpdf-3.02/doc/xpdfrc.5 --- xpdf-orig/doc/xpdfrc.5 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/xpdfrc.5 2007-08-06 14:13:39.000000000 +0200 @@ -333,8 +333,8 @@ Sets the encoding to use for text output. (This can be overridden with the "-enc" switch on the command line.) The .I encoding\-name -must be defined with the unicodeMap command (see above). This -defaults to "Latin1". +must be defined with the unicodeMap command (see above). It defaults +to "UTF-8" in UTF-8 locales, to "Latin1" in all other locales. .TP .BR textEOL " unix | dos | mac" Sets the end-of-line convention to use for text output. The options Pouze v xpdf-3.02/doc: xpdfrc.5.orig diff -ur xpdf-orig/doc/xpdf.1 xpdf-3.02/doc/xpdf.1 --- xpdf-orig/doc/xpdf.1 2007-02-27 23:05:51.000000000 +0100 +++ xpdf-3.02/doc/xpdf.1 2007-08-06 14:13:39.000000000 +0200 @@ -151,7 +151,8 @@ .I encoding\-name must be defined with the unicodeMap command (see .BR xpdfrc (5)). -This defaults to "Latin1" (which is a built-in encoding). +This defaults to "UTF-8" in UTF-8 locales, to "Latin1" in all other +locales ("UTF-8" and "Latin1" are built-in encodings). .RB "[config file: " textEncoding ] .TP .BI \-eol " unix | dos | mac" Pouze v xpdf-3.02/doc: xpdf.1.orig diff -ur xpdf-orig/xpdf/GlobalParams.cc xpdf-3.02/xpdf/GlobalParams.cc --- xpdf-orig/xpdf/GlobalParams.cc 2007-02-27 23:05:52.000000000 +0100 +++ xpdf-3.02/xpdf/GlobalParams.cc 2007-08-06 14:24:43.000000000 +0200 @@ -38,6 +38,8 @@ #include "CMap.h" #include "BuiltinFontTables.h" #include "FontEncodingTables.h" +#include <langinfo.h> +#include <locale.h> #ifdef ENABLE_PLUGINS # include "XpdfPluginAPI.h" #endif @@ -678,7 +680,12 @@ psPreload = gFalse; psOPI = gFalse; psASCIIHex = gFalse; - textEncoding = new GString("Latin1"); + setlocale(LC_ALL,""); + setlocale(LC_NUMERIC,"POSIX"); + if (strcmp("UTF-8",nl_langinfo(CODESET))) + textEncoding = new GString("Latin1"); + else + textEncoding = new GString("UTF-8"); #if defined(WIN32) textEOL = eolDOS; #elif defined(MACOS) diff -ur xpdf-orig/xpdf/XPDFCore.cc xpdf-3.02/xpdf/XPDFCore.cc --- xpdf-orig/xpdf/XPDFCore.cc 2007-02-27 23:05:52.000000000 +0100 +++ xpdf-3.02/xpdf/XPDFCore.cc 2007-08-06 14:13:39.000000000 +0200 @@ -427,13 +427,17 @@ XtPointer *value, unsigned long *length, int *format) { Atom *array; + static Atom utf8str = XInternAtom(currentSelectionOwner->display, "UTF8_STRING", False); // send back a list of supported conversion targets if (*target == targetsAtom) { if (!(array = (Atom *)XtMalloc(sizeof(Atom)))) { return False; } - array[0] = XA_STRING; + if (strcmp("UTF-8",globalParams->getTextEncodingName()->getCString())) + array[0] = XA_STRING; + else + array[0] = utf8str; *value = (XtPointer)array; *type = XA_ATOM; *format = 32; @@ -441,11 +445,11 @@ return True; // send the selected text - } else if (*target == XA_STRING) { + } else if (*target == XA_STRING || *target == utf8str) { //~ for multithreading: need a mutex here *value = XtNewString(currentSelection->getCString()); *length = currentSelection->getLength(); - *type = XA_STRING; + *type = *target; *format = 8; // 8-bit elements return True; } Pouze v xpdf-3.02/xpdf: XPDFCore.cc.orig diff -ur xpdf-orig/xpdf/XPDFViewer.cc xpdf-3.02/xpdf/XPDFViewer.cc --- xpdf-orig/xpdf/XPDFViewer.cc 2007-02-27 23:05:52.000000000 +0100 +++ xpdf-3.02/xpdf/XPDFViewer.cc 2007-08-06 14:13:39.000000000 +0200 @@ -2658,7 +2658,10 @@ // create the new labels items = core->getDoc()->getOutline()->getItems(); if (items && items->getLength() > 0) { - enc = new GString("Latin1"); + if (strcmp("UTF-8",globalParams->getTextEncodingName()->getCString())) + enc = new GString("Latin1"); + else + enc = new GString("UTF-8"); uMap = globalParams->getUnicodeMap(enc); delete enc; setupOutlineItems(items, NULL, uMap); Pouze v xpdf-3.02/xpdf: XPDFViewer.cc.orig
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor