diff -Nru -w gnash-0.8.8/debian/changelog gnash-0.8.8/debian/changelog --- gnash-0.8.8/debian/changelog 2010-09-30 14:32:45.000000000 +0200 +++ gnash-0.8.8/debian/changelog 2010-11-28 19:37:51.000000000 +0100 @@ -1,3 +1,28 @@ +gnash (0.8.8-6ubuntu1) natty; urgency=low + + * Merge from debian unstable (LP: #682386). Remaining changes: + - Add Ubuntu flash alternatives in postinst and prerm + + update debian/browser-plugin-gnash.postinst + + update debian/browser-plugin-gnash.prerm + - Ensure the directories we are installing alternatives too exist + already + + add debian/browser-plugin-gnash.dirs + + -- Angel Abad Sun, 28 Nov 2010 19:32:06 +0100 + +gnash (0.8.8-6) unstable; urgency=low + + * Added patches that fix some upstream bugs + + 01_38be50cecc, 02_b3d5da01fb, 03_c22769f0ab + + 04_baseuri1, 05_baseuri2 + + 06_ytfix: youtube videos starts immediately. + * Fixed browser-plugin-gnash piuparts error. + * Add "DM-Upload-Allowed: yes". + + * Upload sponsored by Petter Reinholdtsen. + + -- Gabriele Giacone <1o5g4r8o@gmail.com> Mon, 15 Nov 2010 23:42:26 +0100 + gnash (0.8.8-5ubuntu1) maverick; urgency=low [ Micah Gersten ] @@ -1147,4 +1172,3 @@ * Upload sponsored by Petter Reinholdtsen. -- Miriam Ruiz Sun, 7 May 2006 00:54:46 +0000 - diff -Nru -w gnash-0.8.8/debian/control gnash-0.8.8/debian/control --- gnash-0.8.8/debian/control 2010-09-30 00:13:28.000000000 +0200 +++ gnash-0.8.8/debian/control 2010-11-28 19:31:17.000000000 +0100 @@ -1,5 +1,6 @@ Source: gnash Priority: optional +DM-Upload-Allowed: yes Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Debian Flash Team Uploaders: Miriam Ruiz , diff -Nru -w gnash-0.8.8/debian/patches/01_38be50cecc gnash-0.8.8/debian/patches/01_38be50cecc --- gnash-0.8.8/debian/patches/01_38be50cecc 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.8/debian/patches/01_38be50cecc 2010-11-07 20:08:34.000000000 +0100 @@ -0,0 +1,18 @@ +Description: Mark parent XMLNodes. +Author: Benjamin Wolsey +Bug: https://savannah.gnu.org/bugs/?31044 + +--- a/libcore/asobj/XMLNode_as.cpp ++++ b/libcore/asobj/XMLNode_as.cpp +@@ -465,6 +465,11 @@ + void + XMLNode_as::setReachable() + { ++ // If there is a parent, make sure its object is reachable. This goes ++ // up towards the root node of tree without marking the XMLNode ++ // resources (which would cause infinite recursion). ++ if (_parent && _parent->_object) _parent->_object->setReachable(); ++ + // Mark children + std::for_each(_children.begin(), _children.end(), + boost::mem_fn(&XMLNode_as::setReachable)); diff -Nru -w gnash-0.8.8/debian/patches/02_b3d5da01fb gnash-0.8.8/debian/patches/02_b3d5da01fb --- gnash-0.8.8/debian/patches/02_b3d5da01fb 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.8/debian/patches/02_b3d5da01fb 2010-11-07 20:08:34.000000000 +0100 @@ -0,0 +1,47 @@ +Description: Use exact-size integers for WAV header. +Author: Sandro Santilli +Bug: https://savannah.gnu.org/bugs/?30993 + +--- a/libsound/sdl/sound_handler_sdl.cpp ++++ b/libsound/sdl/sound_handler_sdl.cpp +@@ -31,6 +31,7 @@ + + #include + #include ++#include + #include + + // Define this to get debugging call about pausing/unpausing audio +@@ -45,23 +46,23 @@ namespace { // anonymous + // http://ftp.iptel.org/pub/sems/doc/full/current/wav__hdr_8c-source.html + typedef struct{ + char rID[4]; // 'RIFF' +- long int rLen; ++ boost::uint32_t rLen; + char wID[4]; // 'WAVE' + char fId[4]; // 'fmt ' +- long int pcm_header_len; // varies... +- short int wFormatTag; +- short int nChannels; // 1,2 for stereo data is (l,r) pairs +- long int nSamplesPerSec; +- long int nAvgBytesPerSec; +- short int nBlockAlign; +- short int nBitsPerSample; ++ boost::uint32_t pcm_header_len; // varies... ++ boost::int16_t wFormatTag; ++ boost::int16_t nChannels; // 1,2 for stereo data is (l,r) pairs ++ boost::uint32_t nSamplesPerSec; ++ boost::uint32_t nAvgBytesPerSec; ++ boost::int16_t nBlockAlign; ++ boost::int16_t nBitsPerSample; + } WAV_HDR; + + // Chunk of wave file + // http://ftp.iptel.org/pub/sems/doc/full/current/wav__hdr_8c-source.html + typedef struct{ + char dId[4]; // 'data' or 'fact' +- long int dLen; ++ boost::uint32_t dLen; + } CHUNK_HDR; + + } // end of anonymous namespace diff -Nru -w gnash-0.8.8/debian/patches/03_c22769f0ab gnash-0.8.8/debian/patches/03_c22769f0ab --- gnash-0.8.8/debian/patches/03_c22769f0ab 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.8/debian/patches/03_c22769f0ab 2010-11-06 01:17:37.000000000 +0100 @@ -0,0 +1,71 @@ +Description: Drop assertion, handle the case instead. +Author: Benjamin Wolsey + +--- a/libcore/DisplayList.cpp ++++ b/libcore/DisplayList.cpp +@@ -45,15 +45,11 @@ + DisplayList::const_iterator beginNonRemoved( + const DisplayList::container_type& c); + +- /// Return an iterator succeeding the last element in zone +- /// (-16384, 0xffff-16384) ++ /// Return the first element in the DisplayList whose depth exceeds ++ /// 65535 (-16384). + DisplayList::iterator dlistTagsEffectiveZoneEnd( + DisplayList::container_type& c); + +- /// Return an constant iterator succeeding the last element +- /// in (-16384, 0xffff-16384) +- DisplayList::const_iterator dlistTagsEffectiveZoneEnd( +- const DisplayList::container_type& c); + } + + /// Anonymous namespace for generic algorithm functors. +@@ -881,21 +877,27 @@ + } + + void +-DisplayList::mergeDisplayList(DisplayList & newList) ++DisplayList::mergeDisplayList(DisplayList& newList) + { + testInvariant(); + ++ log_debug("New list size: %s", newList.size()); ++ + iterator itOld = beginNonRemoved(_charsByDepth); + iterator itNew = beginNonRemoved(newList._charsByDepth); + + iterator itOldEnd = dlistTagsEffectiveZoneEnd(_charsByDepth); +- iterator itNewEnd = newList._charsByDepth.end(); +- assert(itNewEnd == dlistTagsEffectiveZoneEnd(newList._charsByDepth) ); ++ ++ // There used to be an assertion here that no character in the new list ++ // is at depth 65535 or higher. There's no reason why the tags executed ++ // on the new list shouldn't do this though. Bug #29282 does this. ++ // TODO: check whether we should be ignoring that character. ++ iterator itNewEnd = dlistTagsEffectiveZoneEnd(newList._charsByDepth); + + // step1. + // starting scanning both lists. +- while (itOld != itOldEnd) +- { ++ while (itOld != itOldEnd) { ++ + iterator itOldBackup = itOld; + + DisplayObject* chOld = *itOldBackup; +@@ -1108,13 +1110,6 @@ + { + return std::find_if(c.begin(), c.end(), + DepthGreaterOrEqual(0xffff + DisplayObject::staticDepthOffset)); +-} +- +-DisplayList::const_iterator +-dlistTagsEffectiveZoneEnd(const DisplayList::container_type& c) +-{ +- return std::find_if(c.begin(), c.end(), +- DepthGreaterOrEqual(0xffff + DisplayObject::staticDepthOffset)); + } + + } // anonymous namespace + \ No hay ningún carácter de nueva línea al final del archivo diff -Nru -w gnash-0.8.8/debian/patches/04_baseuri1 gnash-0.8.8/debian/patches/04_baseuri1 --- gnash-0.8.8/debian/patches/04_baseuri1 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.8/debian/patches/04_baseuri1 2010-11-06 01:17:37.000000000 +0100 @@ -0,0 +1,20 @@ +Description: "base" parameter is always to be considered a directory. All cases + in plugin/test/baseuri/ succeed now +Author: Sandro Santilli + +--- a/gui/Player.cpp ++++ b/gui/Player.cpp +@@ -314,9 +314,12 @@ + + // Parse player parameters. These are not passed to the SWF, but rather + // control stage properties etc. ++ // NOTE: it is intentional to force a trailing slash to "base" argument ++ // as it was tested that the "base" argument is always considered ++ // a directory! + Params::const_iterator it = _params.find("base"); + const URL baseURL = (it == _params.end()) ? _baseurl : +- URL(it->second, _baseurl); ++ URL(it->second+"/", _baseurl); + /// The RunResources should be populated before parsing. + _runResources.reset(new RunResources(baseURL.str())); + diff -Nru -w gnash-0.8.8/debian/patches/05_baseuri2 gnash-0.8.8/debian/patches/05_baseuri2 --- gnash-0.8.8/debian/patches/05_baseuri2 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.8/debian/patches/05_baseuri2 2010-11-07 20:08:34.000000000 +0100 @@ -0,0 +1,70 @@ +Description: Use window.document.baseURI rather than + window.document.location.href. The former honours tags, fixing bug + #31497 (aka easy come, easy go) +Author: Sandro Santilli +Bug: https://savannah.gnu.org/bugs/?31497 + +--- a/plugin/npapi/plugin.cpp ++++ b/plugin/npapi/plugin.cpp +@@ -1218,6 +1218,13 @@ + std::string + nsPluginInstance::getCurrentPageURL() const + { ++ // Return: ++ // window.document.baseURI ++ // ++ // Was (bogus): ++ // window.document.location.href ++ // ++ + NPP npp = _instance; + + NPIdentifier sDocument = NPN_GetStringIdentifier("document"); +@@ -1230,20 +1237,21 @@ + NPN_ReleaseObject(window); + + if (!NPVARIANT_IS_OBJECT(vDoc)) { +- gnash::log_error("Can't get window object"); +- return NULL; ++ gnash::log_error("Can't get window.document object"); ++ return std::string(); + } + + NPObject* npDoc = NPVARIANT_TO_OBJECT(vDoc); + ++/* + NPIdentifier sLocation = NPN_GetStringIdentifier("location"); + NPVariant vLoc; + NPN_GetProperty(npp, npDoc, sLocation, &vLoc); + NPN_ReleaseObject(npDoc); + + if (!NPVARIANT_IS_OBJECT(vLoc)) { +- gnash::log_error("Can't get window.location object"); +- return NULL; ++ gnash::log_error("Can't get window.document.location object"); ++ return std::string(); + } + + NPObject* npLoc = NPVARIANT_TO_OBJECT(vLoc); +@@ -1254,8 +1262,19 @@ + NPN_ReleaseObject(npLoc); + + if (!NPVARIANT_IS_STRING(vProp)) { +- gnash::log_error("Can't get window.location.href object"); +- return NULL; ++ gnash::log_error("Can't get window.document.location.href string"); ++ return std::string(); ++ } ++*/ ++ ++ NPIdentifier sProperty = NPN_GetStringIdentifier("baseURI"); ++ NPVariant vProp; ++ NPN_GetProperty(npp, npDoc, sProperty, &vProp); ++ NPN_ReleaseObject(npDoc); ++ ++ if (!NPVARIANT_IS_STRING(vProp)) { ++ gnash::log_error("Can't get window.document.baseURI string"); ++ return std::string(); + } + + const NPString& propValue = NPVARIANT_TO_STRING(vProp); diff -Nru -w gnash-0.8.8/debian/patches/06_ytfix gnash-0.8.8/debian/patches/06_ytfix --- gnash-0.8.8/debian/patches/06_ytfix 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.8/debian/patches/06_ytfix 2010-11-07 20:08:34.000000000 +0100 @@ -0,0 +1,23 @@ +Description: Now yt videos start immediately. +Author: Sandro Santilli +Bug: https://savannah.gnu.org/bugs/?31295 + +--- squeeze~/libcore/ExternalInterface.cpp 2010-08-07 17:50:00.000000000 +0200 ++++ squeeze/libcore/ExternalInterface.cpp 2010-11-04 23:39:51.000000000 +0100 +@@ -663,6 +663,8 @@ + std::string empty; + // Wait for some data from the player + int bytes = 0; ++ ++#if 0 + fd_set fdset; + FD_ZERO(&fdset); + FD_SET(fd, &fdset); +@@ -678,6 +680,7 @@ + ioctlSocket(fd, FIONREAD, &bytes); + #endif + } ++#endif + + // No data yet + if (bytes == 0) { diff -Nru -w gnash-0.8.8/debian/patches/build_on_ia64.patch gnash-0.8.8/debian/patches/build_on_ia64.patch --- gnash-0.8.8/debian/patches/build_on_ia64.patch 2010-09-12 21:44:16.000000000 +0200 +++ gnash-0.8.8/debian/patches/build_on_ia64.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,19 +0,0 @@ -# See: http://bugs.debian.org/571319 - -Index: gnash-0.8.8~bzr20100809.2250/utilities/dumpshm.cpp -=================================================================== ---- gnash-0.8.8~bzr20100809.2250.orig/utilities/dumpshm.cpp 2010-08-09 23:30:37.000000000 +0000 -+++ gnash-0.8.8~bzr20100809.2250/utilities/dumpshm.cpp 2010-08-09 23:36:24.000000000 +0000 -@@ -319,9 +319,9 @@ - log_debug(_("Found it! \"set LCShmKey %s\" in your ~/.gnashrc"), - boost::io::group(hex, showbase, - shmseg.shm_perm.IPC_PERM_KEY)); -- log_debug(_("Last changed on: %s"), ctime(&shmseg.shm_ctime)))); -- log_debug(_("Last attached on: %s"), ctime(&shmseg.shm_atime)))); -- log_debug(_("Last detached on: %s"), ctime(&shmseg.shm_dtime)))); -+ log_debug(_("Last changed on: %s"), ctime(&shmseg.shm_ctime)); -+ log_debug(_("Last attached on: %s"), ctime(&shmseg.shm_atime)); -+ log_debug(_("Last detached on: %s"), ctime(&shmseg.shm_dtime)); - return shmseg.shm_perm.IPC_PERM_KEY; - } - #endif // end of IPC_PERM_KEY diff -Nru -w gnash-0.8.8/debian/patches/disable_fvisibility-inlines-hidden gnash-0.8.8/debian/patches/disable_fvisibility-inlines-hidden --- gnash-0.8.8/debian/patches/disable_fvisibility-inlines-hidden 2010-09-12 21:44:16.000000000 +0200 +++ gnash-0.8.8/debian/patches/disable_fvisibility-inlines-hidden 1970-01-01 01:00:00.000000000 +0100 @@ -1,18 +0,0 @@ - -This breaks build on powerpc in etch. - -https://savannah.gnu.org/bugs/?22753 - -Thanks to Sylvain Beucler for finding the problem. - ---- a/configure.ac -+++ b/configure.ac -@@ -2742,7 +2742,7 @@ AC_DEFUN([CHECK_VISIBILITY_GCC_BUG], - ] - ) - --CHECK_VISIBILITY_GCC_BUG -+dnl CHECK_VISIBILITY_GCC_BUG - - - if test x$ac_cv_gcc_visibility_bug = xno; then diff -Nru -w gnash-0.8.8/debian/patches/fixinfodocs gnash-0.8.8/debian/patches/fixinfodocs --- gnash-0.8.8/debian/patches/fixinfodocs 1970-01-01 01:00:00.000000000 +0100 +++ gnash-0.8.8/debian/patches/fixinfodocs 2010-11-06 01:17:37.000000000 +0100 @@ -0,0 +1,35 @@ +Description: This patch fixes info docs +Author: Gabriele Giacone <1o5g4r8o@gmail.com> +Forwarded: https://savannah.gnu.org/patch/?7325 + +--- trunk~/doc/C/gnashref.xml 2010-08-08 22:46:54.000000000 +0200 ++++ trunk/doc/C/gnashref.xml 2010-08-25 23:41:08.000000000 +0200 +@@ -65,6 +65,12 @@ + 2005, 2006, 2007, 2008, 2009, 2010 + Free Software Foundation + ++ ++ Gnash Documentation ++ ++ ++ Video ++ + +