Hello community,

here is the log from the commit of package chmsee for openSUSE:Factory checked 
in at 2012-12-14 06:35:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/chmsee (Old)
 and      /work/SRC/openSUSE:Factory/.chmsee.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "chmsee", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/chmsee/chmsee.changes    2012-09-23 
19:31:14.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.chmsee.new/chmsee.changes       2012-12-14 
06:35:59.000000000 +0100
@@ -1,0 +2,6 @@
+Sun Dec  9 08:15:07 UTC 2012 - [email protected]
+
+- Update to version 1.99.15
+  * compatibility with Gecko 17
+
+-------------------------------------------------------------------

Old:
----
  jungleji-chmsee-v1.99.14-0-gd5fb276.tar.gz

New:
----
  chmsee-1.99.15.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ chmsee.spec ++++++
--- /var/tmp/diff_new_pack.qCvmL8/_old  2012-12-14 06:36:01.000000000 +0100
+++ /var/tmp/diff_new_pack.qCvmL8/_new  2012-12-14 06:36:01.000000000 +0100
@@ -20,10 +20,10 @@
 Summary:        A Gtk+2 CHM document viewer
 License:        GPL-2.0+
 Group:          Productivity/Graphics/Viewers
-Version:        1.99.14
+Version:        1.99.15
 Release:        0
 Url:            http://code.google.com/p/chmsee/
-Source0:        jungleji-chmsee-v1.99.14-0-gd5fb276.tar.gz
+Source0:        chmsee-%{version}.tar.gz
 Source1:        Makefile
 # PATCH-FIX-UPSTREAM chmsee-newer-firefox.patch [email protected] -- Declare 
chmsee compatible with Firefox 17
 Patch0:         chmsee-newer-firefox.patch
@@ -49,7 +49,7 @@
 and several other great people.
 
 %prep
-%setup -q -n jungleji-chmsee-d5fb276
+%setup -q #-n jungleji-chmsee-d5fb276
 cp %{SOURCE1} src
 %patch0 -p1
 

++++++ jungleji-chmsee-v1.99.14-0-gd5fb276.tar.gz -> chmsee-1.99.15.tar.gz 
++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jungleji-chmsee-d5fb276/application.ini 
new/chmsee-1.99.15/application.ini
--- old/jungleji-chmsee-d5fb276/application.ini 2012-09-14 16:03:11.000000000 
+0200
+++ new/chmsee-1.99.15/application.ini  2012-10-26 05:28:24.000000000 +0200
@@ -19,10 +19,10 @@
 
 [App]
 Name=ChmSee
-Version=1.99.14
+Version=1.99.15
 BuildID=2011040511
 ID={f48601d0-39a1-11e0-a013-00241d8cf371}
 
 [Gecko]
-MinVersion=13.0
-MaxVersion=16.*
+MinVersion=15.0
+MaxVersion=17.*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jungleji-chmsee-d5fb276/chrome/content/book.js 
new/chmsee-1.99.15/chrome/content/book.js
--- old/jungleji-chmsee-d5fb276/chrome/content/book.js  2012-09-14 
16:03:11.000000000 +0200
+++ new/chmsee-1.99.15/chrome/content/book.js   2012-10-26 05:28:24.000000000 
+0200
@@ -87,7 +87,7 @@
                 d("Book::getBookFromFile", "lcid = " + chmobj.lcid);
                 book.charset = getCharset(chmobj.lcid);
 
-                book.title = convertToUTF8(chmobj.bookname, book.charset);
+                book.title = convertStrToUTF8(chmobj.bookname, book.charset);
                 d("Book::getBookFromFile", "book title = " + book.title);
 
                 book.type = "book";
@@ -145,16 +145,6 @@
     return new NewBook();
 };
 
-var convertToUTF8 = function (string, charset) {
-    d("convertToUTF8", "string = " + string + ", charset = " + charset);
-
-    var UTF8Service = 
Cc["@mozilla.org/intl/utf8converterservice;1"].getService(Ci.nsIUTF8ConverterService);
-    if (geckoVersion >= 15)
-        return UTF8Service.convertStringToUTF8(string, charset, false, false);
-    else
-        return UTF8Service.convertStringToUTF8(string, charset, false);
-};
-
 var md5Hash = function (file) {
     var istream = 
Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/jungleji-chmsee-d5fb276/chrome/content/htmlEntities.js 
new/chmsee-1.99.15/chrome/content/htmlEntities.js
--- old/jungleji-chmsee-d5fb276/chrome/content/htmlEntities.js  1970-01-01 
01:00:00.000000000 +0100
+++ new/chmsee-1.99.15/chrome/content/htmlEntities.js   2012-10-26 
05:28:24.000000000 +0200
@@ -0,0 +1,339 @@
+/* More info at: http://phpjs.org
+ * 
+ * This is version: 3.26
+ * php.js is copyright 2011 Kevin van Zonneveld.
+ * 
+ * Portions copyright Brett Zamir (http://brett-zamir.me), Kevin van Zonneveld
+ * (http://kevin.vanzonneveld.net), Onno Marsman, Theriault, Michael White
+ * (http://getsprink.com), Waldo Malqui Silva, Paulo Freitas, Jack, Jonas
+ * Raoni Soares Silva (http://www.jsfromhell.com), Philip Peterson, Legaev
+ * Andrey, Ates Goral (http://magnetiq.com), Alex, Ratheous, Martijn Wieringa,
+ * Rafał Kukawski (http://blog.kukawski.pl), lmeyrick
+ * (https://sourceforge.net/projects/bcmath-js/), Nate, Philippe Baumann,
+ * Enrique Gonzalez, Webtoolkit.info (http://www.webtoolkit.info/), Carlos R.
+ * L. Rodrigues (http://www.jsfromhell.com), Ash Searle
+ * (http://hexmen.com/blog/), Jani Hartikainen, travc, Ole Vrijenhoek,
+ * Erkekjetter, Michael Grier, Rafał Kukawski (http://kukawski.pl), Johnny
+ * Mast (http://www.phpvrouwen.nl), T.Wild, d3x,
+ * 
http://stackoverflow.com/questions/57803/how-to-convert-decimal-to-hex-in-javascript,
+ * Rafał Kukawski (http://blog.kukawski.pl/), stag019, pilus, WebDevHobo
+ * (http://webdevhobo.blogspot.com/), marrtins, GeekFG
+ * (http://geekfg.blogspot.com), Andrea Giammarchi
+ * (http://webreflection.blogspot.com), Arpad Ray (mailto:[email protected]),
+ * gorthaur, Paul Smith, Tim de Koning (http://www.kingsquare.nl), Joris, Oleg
+ * Eremeev, Steve Hilder, majak, gettimeofday, KELAN, Josh Fraser
+ * 
(http://onlineaspect.com/2007/06/08/auto-detect-a-time-zone-with-javascript/),
+ * Marc Palau, Kevin van Zonneveld (http://kevin.vanzonneveld.net/), Martin
+ * (http://www.erlenwiese.de/), Breaking Par Consulting Inc
+ * 
(http://www.breakingpar.com/bkp/home.nsf/0/87256B280015193F87256CFB006C45F7),
+ * Chris, Mirek Slugen, saulius, Alfonso Jimenez
+ * (http://www.alfonsojimenez.com), Diplom@t (http://difane.com/), felix,
+ * Mailfaker (http://www.weedem.fr/), Tyler Akins (http://rumkin.com), Caio
+ * Ariede (http://caioariede.com), Robin, Kankrelune
+ * (http://www.webfaktory.info/), Karol Kowalski, Imgen Tata
+ * (http://www.myipdf.com/), mdsjack (http://www.mdsjack.bo.it), Dreamer,
+ * Felix Geisendoerfer (http://www.debuggable.com/felix), Lars Fischer, AJ,
+ * David, Aman Gupta, Michael White, Public Domain
+ * (http://www.json.org/json2.js), Steven Levithan
+ * (http://blog.stevenlevithan.com), Sakimori, Pellentesque Malesuada,
+ * Thunder.m, Dj (http://phpjs.org/functions/htmlentities:425#comment_134018),
+ * Steve Clay, David James, Francois, class_exists, nobbler, T. Wild, Itsacon
+ * (http://www.itsacon.net/), date, Ole Vrijenhoek (http://www.nervous.nl/),
+ * Fox, Raphael (Ao RUDLER), Marco, noname, Mateusz "loonquawl" Zalega, Frank
+ * Forte, Arno, ger, mktime, john (http://www.jd-tech.net), Nick Kolosov
+ * (http://sammy.ru), marc andreu, Scott Cariss, Douglas Crockford
+ * (http://javascript.crockford.com), madipta, Slawomir Kaniecki,
+ * ReverseSyntax, Nathan, Alex Wilson, kenneth, Bayron Guevara, Adam Wallner
+ * (http://web2.bitbaro.hu/), paulo kuong, jmweb, Lincoln Ramsay, djmix,
+ * Pyerre, Jon Hohle, Thiago Mata (http://thiagomata.blog.com), lmeyrick
+ * (https://sourceforge.net/projects/bcmath-js/this.), Linuxworld, duncan,
+ * Gilbert, Sanjoy Roy, Shingo, sankai, Oskar Larsson Högfeldt
+ * (http://oskar-lh.name/), Denny Wardhana, 0m3r, Everlasto, Subhasis Deb,
+ * josh, jd, Pier Paolo Ramon (http://www.mastersoup.com/), P, merabi, Soren
+ * Hansen, Eugene Bulkin (http://doubleaw.com/), Der Simon
+ * (http://innerdom.sourceforge.net/), echo is bad, Ozh, XoraX
+ * (http://www.xorax.info), EdorFaus, JB, J A R, Marc Jansen, Francesco, LH,
+ * Stoyan Kyosev (http://www.svest.org/), nord_ua, omid
+ * (http://phpjs.org/functions/380:380#comment_137122), Brad Touesnard, MeEtc
+ * (http://yass.meetcweb.com), Peter-Paul Koch
+ * (http://www.quirksmode.org/js/beat.html), Olivier Louvignes
+ * (http://mg-crea.com/), T0bsn, Tim Wiel, Bryan Elliott, Jalal Berrami,
+ * Martin, JT, David Randall, Thomas Beaucourt (http://www.webapp.fr), taith,
+ * vlado houba, Pierre-Luc Paour, Kristof Coomans (SCK-CEN Belgian Nucleair
+ * Research Centre), Martin Pool, Kirk Strobeck, Rick Waldron, Brant Messenger
+ * (http://www.brantmessenger.com/), Devan Penner-Woelk, Saulo Vallory, Wagner
+ * B. Soares, Artur Tchernychev, Valentina De Rosa, Jason Wong
+ * (http://carrot.org/), Christoph, Daniel Esteban, strftime, Mick@el, rezna,
+ * Simon Willison (http://simonwillison.net), Anton Ongson, Gabriel Paderni,
+ * Marco van Oort, penutbutterjelly, Philipp Lenssen, Bjorn Roesbeke
+ * (http://www.bjornroesbeke.be/), Bug?, Eric Nagel, Tomasz Wesolowski,
+ * Evertjan Garretsen, Bobby Drake, Blues (http://tech.bluesmoon.info/), Luke
+ * Godfrey, Pul, uestla, Alan C, Ulrich, Rafal Kukawski, Yves Sucaet,
+ * sowberry, Norman "zEh" Fuchs, hitwork, Zahlii, johnrembo, Nick Callen,
+ * Steven Levithan (stevenlevithan.com), ejsanders, Scott Baker, Brian Tafoya
+ * (http://www.premasolutions.com/), Philippe Jausions
+ * (http://pear.php.net/user/jausions), Aidan Lister
+ * (http://aidanlister.com/), Rob, e-mike, HKM, ChaosNo1, metjay, strcasecmp,
+ * strcmp, Taras Bogach, jpfle, Alexander Ermolaev
+ * (http://snippets.dzone.com/user/AlexanderErmolaev), DxGx, kilops, Orlando,
+ * dptr1988, Le Torbi, James (http://www.james-bell.co.uk/), Pedro Tainha
+ * (http://www.pedrotainha.com), James, Arnout Kazemier
+ * (http://www.3rd-Eden.com), Chris McMacken, gabriel paderni, Yannoo,
+ * FGFEmperor, baris ozdil, Tod Gentille, Greg Frazier, jakes, 3D-GRAF, Allan
+ * Jensen (http://www.winternet.no), Howard Yeend, Benjamin Lupton, davook,
+ * daniel airton wermann (http://wermann.com.br), Atli Þór, Maximusya, Ryan
+ * W Tenney (http://ryan.10e.us), Alexander M Beedie, fearphage
+ * (http://http/my.opera.com/fearphage/), Nathan Sepulveda, Victor, Matteo,
+ * Billy, stensi, Cord, Manish, T.J. Leahy, Riddler
+ * (http://www.frontierwebdev.com/), Rafał Kukawski, FremyCompany, Matt
+ * Bradley, Tim de Koning, Luis Salazar (http://www.freaky-media.com/), Diogo
+ * Resende, Rival, Andrej Pavlovic, Garagoth, Le Torbi
+ * (http://www.letorbi.de/), Dino, Josep Sanz (http://www.ws3.es/), rem,
+ * Russell Walker (http://www.nbill.co.uk/), Jamie Beck
+ * (http://www.terabit.ca/), setcookie, Michael, YUI Library:
+ * http://developer.yahoo.com/yui/docs/YAHOO.util.DateLocale.html, Blues at
+ * http://hacks.bluesmoon.info/strftime/strftime.js, Ben
+ * (http://benblume.co.uk/), DtTvB
+ * (http://dt.in.th/2008-09-16.string-length-in-bytes.html), Andreas, William,
+ * meo, incidence, Cagri Ekin, Amirouche, Amir Habibi
+ * (http://www.residence-mixte.com/), Luke Smith (http://lucassmith.name),
+ * Kheang Hok Chin (http://www.distantia.ca/), Jay Klehr, Lorenzo Pisani,
+ * Tony, Yen-Wei Liu, Greenseed, mk.keck, Leslie Hoare, dude, booeyOH, Ben
+ * Bryan
+ * 
+ * Dual licensed under the MIT (MIT-LICENSE.txt)
+ * and GPL (GPL-LICENSE.txt) licenses.
+ * 
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the
+ * "Software"), to deal in the Software without restriction, including
+ * without limitation the rights to use, copy, modify, merge, publish,
+ * distribute, sublicense, and/or sell copies of the Software, and to
+ * permit persons to whom the Software is furnished to do so, subject to
+ * the following conditions:
+ * 
+ * The above copyright notice and this permission notice shall be included
+ * in all copies or substantial portions of the Software.
+ * 
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ * IN NO EVENT SHALL KEVIN VAN ZONNEVELD BE LIABLE FOR ANY CLAIM, DAMAGES
+ * OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ * OTHER DEALINGS IN THE SOFTWARE.
+ */ 
+
+var EXPORTED_SYMBOLS = ["html_entity_decode"];
+
+function get_html_translation_table (table, quote_style) {
+    // http://kevin.vanzonneveld.net
+    // +   original by: Philip Peterson
+    // +    revised by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
+    // +   bugfixed by: noname
+    // +   bugfixed by: Alex
+    // +   bugfixed by: Marco
+    // +   bugfixed by: madipta
+    // +   improved by: KELAN
+    // +   improved by: Brett Zamir (http://brett-zamir.me)
+    // +   bugfixed by: Brett Zamir (http://brett-zamir.me)
+    // +      input by: Frank Forte
+    // +   bugfixed by: T.Wild
+    // +      input by: Ratheous
+    // %          note: It has been decided that we're not going to add global
+    // %          note: dependencies to php.js, meaning the constants are not
+    // %          note: real constants, but strings instead. Integers are also 
supported if someone
+    // %          note: chooses to create the constants themselves.
+    // *     example 1: get_html_translation_table('HTML_SPECIALCHARS');
+    // *     returns 1: {'"': '&quot;', '&': '&amp;', '<': '&lt;', '>': '&gt;'}
+    var entities = {},
+        hash_map = {},
+        decimal;
+    var constMappingTable = {},
+        constMappingQuoteStyle = {};
+    var useTable = {},
+        useQuoteStyle = {};
+
+    // Translate arguments
+    constMappingTable[0] = 'HTML_SPECIALCHARS';
+    constMappingTable[1] = 'HTML_ENTITIES';
+    constMappingQuoteStyle[0] = 'ENT_NOQUOTES';
+    constMappingQuoteStyle[2] = 'ENT_COMPAT';
+    constMappingQuoteStyle[3] = 'ENT_QUOTES';
+
+    useTable = !isNaN(table) ? constMappingTable[table] : table ? 
table.toUpperCase() : 'HTML_SPECIALCHARS';
+    useQuoteStyle = !isNaN(quote_style) ? constMappingQuoteStyle[quote_style] 
: quote_style ? quote_style.toUpperCase() : 'ENT_COMPAT';
+
+    if (useTable !== 'HTML_SPECIALCHARS' && useTable !== 'HTML_ENTITIES') {
+        throw new Error("Table: " + useTable + ' not supported');
+        // return false;
+    }
+
+    entities['38'] = '&amp;';
+    if (useTable === 'HTML_ENTITIES') {
+        entities['160'] = '&nbsp;';
+        entities['161'] = '&iexcl;';
+        entities['162'] = '&cent;';
+        entities['163'] = '&pound;';
+        entities['164'] = '&curren;';
+        entities['165'] = '&yen;';
+        entities['166'] = '&brvbar;';
+        entities['167'] = '&sect;';
+        entities['168'] = '&uml;';
+        entities['169'] = '&copy;';
+        entities['170'] = '&ordf;';
+        entities['171'] = '&laquo;';
+        entities['172'] = '&not;';
+        entities['173'] = '&shy;';
+        entities['174'] = '&reg;';
+        entities['175'] = '&macr;';
+        entities['176'] = '&deg;';
+        entities['177'] = '&plusmn;';
+        entities['178'] = '&sup2;';
+        entities['179'] = '&sup3;';
+        entities['180'] = '&acute;';
+        entities['181'] = '&micro;';
+        entities['182'] = '&para;';
+        entities['183'] = '&middot;';
+        entities['184'] = '&cedil;';
+        entities['185'] = '&sup1;';
+        entities['186'] = '&ordm;';
+        entities['187'] = '&raquo;';
+        entities['188'] = '&frac14;';
+        entities['189'] = '&frac12;';
+        entities['190'] = '&frac34;';
+        entities['191'] = '&iquest;';
+        entities['192'] = '&Agrave;';
+        entities['193'] = '&Aacute;';
+        entities['194'] = '&Acirc;';
+        entities['195'] = '&Atilde;';
+        entities['196'] = '&Auml;';
+        entities['197'] = '&Aring;';
+        entities['198'] = '&AElig;';
+        entities['199'] = '&Ccedil;';
+        entities['200'] = '&Egrave;';
+        entities['201'] = '&Eacute;';
+        entities['202'] = '&Ecirc;';
+        entities['203'] = '&Euml;';
+        entities['204'] = '&Igrave;';
+        entities['205'] = '&Iacute;';
+        entities['206'] = '&Icirc;';
+        entities['207'] = '&Iuml;';
+        entities['208'] = '&ETH;';
+        entities['209'] = '&Ntilde;';
+        entities['210'] = '&Ograve;';
+        entities['211'] = '&Oacute;';
+        entities['212'] = '&Ocirc;';
+        entities['213'] = '&Otilde;';
+        entities['214'] = '&Ouml;';
+        entities['215'] = '&times;';
+        entities['216'] = '&Oslash;';
+        entities['217'] = '&Ugrave;';
+        entities['218'] = '&Uacute;';
+        entities['219'] = '&Ucirc;';
+        entities['220'] = '&Uuml;';
+        entities['221'] = '&Yacute;';
+        entities['222'] = '&THORN;';
+        entities['223'] = '&szlig;';
+        entities['224'] = '&agrave;';
+        entities['225'] = '&aacute;';
+        entities['226'] = '&acirc;';
+        entities['227'] = '&atilde;';
+        entities['228'] = '&auml;';
+        entities['229'] = '&aring;';
+        entities['230'] = '&aelig;';
+        entities['231'] = '&ccedil;';
+        entities['232'] = '&egrave;';
+        entities['233'] = '&eacute;';
+        entities['234'] = '&ecirc;';
+        entities['235'] = '&euml;';
+        entities['236'] = '&igrave;';
+        entities['237'] = '&iacute;';
+        entities['238'] = '&icirc;';
+        entities['239'] = '&iuml;';
+        entities['240'] = '&eth;';
+        entities['241'] = '&ntilde;';
+        entities['242'] = '&ograve;';
+        entities['243'] = '&oacute;';
+        entities['244'] = '&ocirc;';
+        entities['245'] = '&otilde;';
+        entities['246'] = '&ouml;';
+        entities['247'] = '&divide;';
+        entities['248'] = '&oslash;';
+        entities['249'] = '&ugrave;';
+        entities['250'] = '&uacute;';
+        entities['251'] = '&ucirc;';
+        entities['252'] = '&uuml;';
+        entities['253'] = '&yacute;';
+        entities['254'] = '&thorn;';
+        entities['255'] = '&yuml;';
+    }
+
+    if (useQuoteStyle !== 'ENT_NOQUOTES') {
+        entities['34'] = '&quot;';
+    }
+    if (useQuoteStyle === 'ENT_QUOTES') {
+        entities['39'] = '&#39;';
+    }
+    entities['60'] = '&lt;';
+    entities['62'] = '&gt;';
+
+    entities['272'] = '&Dstrok;';
+    entities['273'] = '&dstrok;';
+
+    // ascii decimals to real symbols
+    for (decimal in entities) {
+        if (entities.hasOwnProperty(decimal)) {
+            hash_map[String.fromCharCode(decimal)] = entities[decimal];
+        }
+    }
+
+    return hash_map;
+}
+
+var html_entity_decode = function(string, quote_style) {
+    // http://kevin.vanzonneveld.net
+    // +   original by: john (http://www.jd-tech.net)
+    // +      input by: ger
+    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
+    // +    revised by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
+    // +   bugfixed by: Onno Marsman
+    // +   improved by: marc andreu
+    // +    revised by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
+    // +      input by: Ratheous
+    // +   bugfixed by: Brett Zamir (http://brett-zamir.me)
+    // +      input by: Nick Kolosov (http://sammy.ru)
+    // +   bugfixed by: Fox
+    // -    depends on: get_html_translation_table
+    // *     example 1: html_entity_decode('Kevin &amp; van Zonneveld');
+    // *     returns 1: 'Kevin & van Zonneveld'
+    // *     example 2: html_entity_decode('&amp;lt;');
+    // *     returns 2: '&lt;'
+    var hash_map = {},
+        symbol = '',
+        tmp_str = '',
+        entity = '';
+
+    if (!string.match(/(&\w*;)+/)) {
+        return false;
+    }
+
+    tmp_str = string.toString();
+
+    if (false === (hash_map = this.get_html_translation_table('HTML_ENTITIES', 
quote_style))) {
+        return false;
+    }
+
+    // fix &amp; problem
+    // http://phpjs.org/functions/get_html_translation_table:416#comment_97660
+    delete(hash_map['&']);
+    hash_map['&'] = '&amp;';
+
+    for (symbol in hash_map) {
+        entity = hash_map[symbol];
+        tmp_str = tmp_str.split(entity).join(symbol);
+    }
+    tmp_str = tmp_str.split('&#039;').join("'");
+
+    return tmp_str;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jungleji-chmsee-d5fb276/chrome/content/rdfUtils.js 
new/chmsee-1.99.15/chrome/content/rdfUtils.js
--- old/jungleji-chmsee-d5fb276/chrome/content/rdfUtils.js      2012-09-14 
16:03:11.000000000 +0200
+++ new/chmsee-1.99.15/chrome/content/rdfUtils.js       2012-10-26 
05:28:24.000000000 +0200
@@ -25,6 +25,7 @@
 const Cu = Components.utils;
 
 Cu.import("chrome://chmsee/content/utils.js");
+Cu.import("chrome://chmsee/content/htmlEntities.js");
 
 const rdfService = 
Cc["@mozilla.org/rdf/rdf-service;1"].getService(Ci.nsIRDFService);
 const rdfContainerUtils = 
Cc["@mozilla.org/rdf/container-utils;1"].createInstance(Ci.nsIRDFContainerUtils);
@@ -179,6 +180,7 @@
     this.isItem = false;
     this.name = "";
     this.local = "";
+    this.charset = parseInfo.charset;
     this.containers = [];
     this.res = [];
     this.treeType = parseInfo.type; // false: list, true: tree
@@ -233,12 +235,22 @@
             var res = rdfService.GetAnonymousResource();
 
             var predicate = rdfService.GetResource("urn:chmsee:rdf#name");
-            var object = rdfService.GetLiteral(this.name);
+            var nameUTF = this.name;
+            var deStr = html_entity_decode(this.name);
+            d("Handler::endElement", "deStr = " + deStr);
+            if (deStr) {
+                nameUTF = convertStrToUTF8(deStr, this.charset);
+            }
+
+            var object = rdfService.GetLiteral(nameUTF);
             this.ds.Assert(res, predicate, object, true);
+            d("Handler::endElement", "name = " + this.name);
+            d("Handler::endElement", "nameUTF = " + nameUTF);
 
             predicate = rdfService.GetResource("urn:chmsee:rdf#local");
             object = rdfService.GetLiteral(this.folder + "/" + this.local);
             this.ds.Assert(res, predicate, object, true);
+            d("Handler::endElement", "object folder = " + this.folder + " 
local = " + this.local);
 
             this.containers[this.containers.length - 1].AppendElement(res);
 
@@ -256,14 +268,14 @@
     },
 };
 
-var generateRdf = function (treeType, file, bookfolder, datasource, charset) {
-    d("RDF::generateRdf", "charset = " + charset);
+var generateRdf = function (treeType, file, bookfolder, datasource, 
bookCharset) {
+    d("RDF::generateRdf", "charset = " + bookCharset);
     var data = "";
     var fstream = 
Cc["@mozilla.org/network/file-input-stream;1"].createInstance(Ci.nsIFileInputStream);
     var cstream = 
Cc["@mozilla.org/intl/converter-input-stream;1"].createInstance(Ci.nsIConverterInputStream);
 
     fstream.init(file, -1, 0, 0);
-    cstream.init(fstream, charset, 0, 0);
+    cstream.init(fstream, bookCharset, 0, 0);
 
     let (str = {}) {
         let read = 0;
@@ -279,6 +291,6 @@
     sl.loadSubScript("chrome://chmsee/content/simpleparser.js", tmpNameSpace);
 
     var parser = new tmpNameSpace.SimpleHtmlParser();
-    var pinfo = {folder: bookfolder, ds: datasource, type: treeType};
+    var pinfo = {folder: bookfolder, ds: datasource, type: treeType, charset: 
bookCharset};
     parser.parse(data, new ContentHandler(pinfo));
 };
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jungleji-chmsee-d5fb276/chrome/content/utils.js 
new/chmsee-1.99.15/chrome/content/utils.js
--- old/jungleji-chmsee-d5fb276/chrome/content/utils.js 2012-09-14 
16:03:11.000000000 +0200
+++ new/chmsee-1.99.15/chrome/content/utils.js  2012-10-26 05:28:24.000000000 
+0200
@@ -17,7 +17,7 @@
  *  Boston, MA 02110-1301, USA.
  */
 
-var EXPORTED_SYMBOLS = ["Prefs", "LastUrls", "Bookmarks", "d", "CsScheme", 
"notice", "geckoVersion"];
+var EXPORTED_SYMBOLS = ["Prefs", "LastUrls", "Bookmarks", "convertStrToUTF8", 
"d", "CsScheme", "notice", "geckoVersion"];
 
 const Cc = Components.classes;
 const Ci = Components.interfaces;
@@ -205,6 +205,17 @@
     return ios.newURI(spec, null, null);
 };
 
+
+var convertStrToUTF8 = function (string, charset) {
+    d("convertStrToUTF8", "string = " + string + ", charset = " + charset);
+
+    var UTF8Service = 
Cc["@mozilla.org/intl/utf8converterservice;1"].getService(Ci.nsIUTF8ConverterService);
+    if (geckoVersion >= 15)
+        return UTF8Service.convertStringToUTF8(string, charset, false, false);
+    else
+        return UTF8Service.convertStringToUTF8(string, charset, false);
+};
+
 /*** Debug ***/
 
 const CsDebug = false;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jungleji-chmsee-d5fb276/src/Makefile.freebsd 
new/chmsee-1.99.15/src/Makefile.freebsd
--- old/jungleji-chmsee-d5fb276/src/Makefile.freebsd    2012-09-14 
16:03:11.000000000 +0200
+++ new/chmsee-1.99.15/src/Makefile.freebsd     1970-01-01 01:00:00.000000000 
+0100
@@ -1,18 +0,0 @@
-LIBXUL_SDK = /usr/local/lib/firefox/
-
-NSPR_INCLUDES = -I/usr/local/include/nspr
-NSPR_LIBS = -pthread -L/usr/local/lib/nspr -lplds4 -lplc4 -lnspr4
-
-CHMLIB_INCLUDES = -I/usr/local/include
-CHMLIB_LIBS = -L/usr/local/lib -lchm
-
-PYTHON2 = /usr/local/bin/python2.7
-XPCOMCHM = libxpcomchm.so
-
-DEFINES = -pthread
-LDFLAGS = -Wl,-soname,${TARGET} -L${LIBXUL_SDK}/bin -lpthread
-
-CC = /usr/bin/clang
-CXX = /usr/bin/clang
-
-include ./common.mk
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jungleji-chmsee-d5fb276/src/Makefile.netbsd 
new/chmsee-1.99.15/src/Makefile.netbsd
--- old/jungleji-chmsee-d5fb276/src/Makefile.netbsd     2012-09-14 
16:03:11.000000000 +0200
+++ new/chmsee-1.99.15/src/Makefile.netbsd      2012-10-26 05:28:24.000000000 
+0200
@@ -1,4 +1,4 @@
-LIBXUL_SDK = /usr/pkg/lib/xulrunner-sdk
+LIBXUL_SDK = $(shell pkg-config --variable=sdkdir libxul)
 
 NSPR_INCLUDES = -I/usr/pkg/include/nspr
 NSPR_LIBS = -Wl,-R/usr/pkg/lib/nspr -pthread -L/usr/pkg/lib/nspr -lplds4 
-lplc4 -lnspr4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jungleji-chmsee-d5fb276/src/csChm.cpp 
new/chmsee-1.99.15/src/csChm.cpp
--- old/jungleji-chmsee-d5fb276/src/csChm.cpp   2012-09-14 16:03:11.000000000 
+0200
+++ new/chmsee-1.99.15/src/csChm.cpp    2012-10-26 05:28:24.000000000 +0200
@@ -70,7 +70,7 @@
 
 NS_IMETHODIMP csChm::getAttribute(char **attr, char *m)
 {
-        NS_PRECONDITION(attr != nsnull, "null ptr");
+        NS_PRECONDITION(attr != NULL, "null ptr");
         if (!attr)
                 return NS_ERROR_NULL_POINTER;
 
@@ -80,7 +80,7 @@
                         return NS_ERROR_NULL_POINTER;
         }
         else {
-                *attr = nsnull;
+                *attr = NULL;
         }
         return NS_OK;
 }
@@ -89,7 +89,7 @@
 NS_IMPL_ISUPPORTS1_CI(csChm, csIChm)
 
 /* long openChm (in nsILocalFile file); */
-NS_IMETHODIMP csChm::OpenChm(nsILocalFile *file, const char *folder, PRInt32 
*_retval NS_OUTPARAM)
+NS_IMETHODIMP csChm::OpenChm(nsILocalFile *file, const char *folder, int32_t 
*_retval)
 {
         if (!file) {
                 *_retval = -1;
@@ -168,7 +168,7 @@
 }
 
 /* readonly attribute PRUint32 lcid; */
-NS_IMETHODIMP csChm::GetLcid(PRUint32 *aLcid)
+NS_IMETHODIMP csChm::GetLcid(uint32_t *aLcid)
 {
         *aLcid = mLcid;
         return NS_OK;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/jungleji-chmsee-d5fb276/src/csIChm.idl 
new/chmsee-1.99.15/src/csIChm.idl
--- old/jungleji-chmsee-d5fb276/src/csIChm.idl  2012-09-14 16:03:11.000000000 
+0200
+++ new/chmsee-1.99.15/src/csIChm.idl   2012-10-26 05:28:24.000000000 +0200
@@ -30,5 +30,5 @@
         readonly attribute string bookname;
         readonly attribute string hhc;
         readonly attribute string hhk;
-        readonly attribute PRUint32 lcid;
+        readonly attribute unsigned long lcid;
 };

++++++ chmsee-newer-firefox.patch ++++++
--- /var/tmp/diff_new_pack.qCvmL8/_old  2012-12-14 06:36:01.000000000 +0100
+++ /var/tmp/diff_new_pack.qCvmL8/_new  2012-12-14 06:36:01.000000000 +0100
@@ -5,6 +5,6 @@
 @@ -25,4 +25,4 @@ ID={f48601d0-39a1-11e0-a013-00241d8cf371}
  
  [Gecko]
- MinVersion=13.0
--MaxVersion=16.*
-+MaxVersion=17.*
+ MinVersion=15.0
+-MaxVersion=17.*
++MaxVersion=18.*

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to