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: {'"': '"', '&': '&', '<': '<', '>': '>'} + 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'] = '&'; + if (useTable === 'HTML_ENTITIES') { + entities['160'] = ' '; + entities['161'] = '¡'; + entities['162'] = '¢'; + entities['163'] = '£'; + entities['164'] = '¤'; + entities['165'] = '¥'; + entities['166'] = '¦'; + entities['167'] = '§'; + entities['168'] = '¨'; + entities['169'] = '©'; + entities['170'] = 'ª'; + entities['171'] = '«'; + entities['172'] = '¬'; + entities['173'] = '­'; + entities['174'] = '®'; + entities['175'] = '¯'; + entities['176'] = '°'; + entities['177'] = '±'; + entities['178'] = '²'; + entities['179'] = '³'; + entities['180'] = '´'; + entities['181'] = 'µ'; + entities['182'] = '¶'; + entities['183'] = '·'; + entities['184'] = '¸'; + entities['185'] = '¹'; + entities['186'] = 'º'; + entities['187'] = '»'; + entities['188'] = '¼'; + entities['189'] = '½'; + entities['190'] = '¾'; + entities['191'] = '¿'; + entities['192'] = 'À'; + entities['193'] = 'Á'; + entities['194'] = 'Â'; + entities['195'] = 'Ã'; + entities['196'] = 'Ä'; + entities['197'] = 'Å'; + entities['198'] = 'Æ'; + entities['199'] = 'Ç'; + entities['200'] = 'È'; + entities['201'] = 'É'; + entities['202'] = 'Ê'; + entities['203'] = 'Ë'; + entities['204'] = 'Ì'; + entities['205'] = 'Í'; + entities['206'] = 'Î'; + entities['207'] = 'Ï'; + entities['208'] = 'Ð'; + entities['209'] = 'Ñ'; + entities['210'] = 'Ò'; + entities['211'] = 'Ó'; + entities['212'] = 'Ô'; + entities['213'] = 'Õ'; + entities['214'] = 'Ö'; + entities['215'] = '×'; + entities['216'] = 'Ø'; + entities['217'] = 'Ù'; + entities['218'] = 'Ú'; + entities['219'] = 'Û'; + entities['220'] = 'Ü'; + entities['221'] = 'Ý'; + entities['222'] = 'Þ'; + entities['223'] = 'ß'; + entities['224'] = 'à'; + entities['225'] = 'á'; + entities['226'] = 'â'; + entities['227'] = 'ã'; + entities['228'] = 'ä'; + entities['229'] = 'å'; + entities['230'] = 'æ'; + entities['231'] = 'ç'; + entities['232'] = 'è'; + entities['233'] = 'é'; + entities['234'] = 'ê'; + entities['235'] = 'ë'; + entities['236'] = 'ì'; + entities['237'] = 'í'; + entities['238'] = 'î'; + entities['239'] = 'ï'; + entities['240'] = 'ð'; + entities['241'] = 'ñ'; + entities['242'] = 'ò'; + entities['243'] = 'ó'; + entities['244'] = 'ô'; + entities['245'] = 'õ'; + entities['246'] = 'ö'; + entities['247'] = '÷'; + entities['248'] = 'ø'; + entities['249'] = 'ù'; + entities['250'] = 'ú'; + entities['251'] = 'û'; + entities['252'] = 'ü'; + entities['253'] = 'ý'; + entities['254'] = 'þ'; + entities['255'] = 'ÿ'; + } + + if (useQuoteStyle !== 'ENT_NOQUOTES') { + entities['34'] = '"'; + } + if (useQuoteStyle === 'ENT_QUOTES') { + entities['39'] = '''; + } + entities['60'] = '<'; + entities['62'] = '>'; + + entities['272'] = 'Đ'; + entities['273'] = 'đ'; + + // 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 & van Zonneveld'); + // * returns 1: 'Kevin & van Zonneveld' + // * example 2: html_entity_decode('&lt;'); + // * returns 2: '<' + 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 & problem + // http://phpjs.org/functions/get_html_translation_table:416#comment_97660 + delete(hash_map['&']); + hash_map['&'] = '&'; + + for (symbol in hash_map) { + entity = hash_map[symbol]; + tmp_str = tmp_str.split(entity).join(symbol); + } + tmp_str = tmp_str.split(''').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]
