head 1.4; access; symbols pkgsrc-2013Q2:1.4.0.8 pkgsrc-2013Q2-base:1.4 pkgsrc-2012Q4:1.4.0.6 pkgsrc-2012Q4-base:1.4 pkgsrc-2011Q4:1.4.0.4 pkgsrc-2011Q4-base:1.4 pkgsrc-2011Q2:1.4.0.2 pkgsrc-2011Q2-base:1.4 pkgsrc-2010Q4:1.3.0.4 pkgsrc-2010Q4-base:1.3 pkgsrc-2010Q3:1.3.0.2 pkgsrc-2010Q3-base:1.3 pkgsrc-2009Q4:1.1.0.10 pkgsrc-2009Q4-base:1.1 pkgsrc-2009Q3:1.1.0.8 pkgsrc-2009Q3-base:1.1 pkgsrc-2009Q2:1.1.0.6 pkgsrc-2009Q2-base:1.1 pkgsrc-2009Q1:1.1.0.4 pkgsrc-2009Q1-base:1.1 pkgsrc-2008Q4:1.1.0.2; locks; strict; comment @# @; 1.4 date 2011.01.27.17.24.19; author wiz; state dead; branches; next 1.3; 1.3 date 2010.10.02.10.08.31; author wiz; state Exp; branches; next 1.2; 1.2 date 2010.02.16.09.01.46; author wiz; state dead; branches; next 1.1; 1.1 date 2009.01.12.12.33.40; author wiz; state Exp; branches 1.1.2.1; next ; 1.1.2.1 date 2009.01.12.12.33.40; author rtr; state dead; branches; next 1.1.2.2; 1.1.2.2 date 2009.01.14.06.46.53; author rtr; state Exp; branches; next ; desc @@ 1.4 log @Update to 2.4.0. VERSION 2.4.0 CHANGES: * New Splash Screen by Tomasz Dudzik . * The "Playdar Collection" feature has been disabled until some technical issues are resolved. * Fixed some broken radio stream URLs. BUGFIXES: * Fix crash on copying tracks between collection. (BR 261364) * Fix fetching of script data. BBC, Free Music Charts and others should work again. (BR 261839) * Actually show the Splash Screen by default, as it was meant to work. * Leave all pending files in case of error/conflict during tracks moving. (BR 257739) * Fix crash when moving tracks between collections. (BR 253033) * Fixed issue with UMS Collection that made amarok to delete original track instead of newly copied one. (BR 238915) * Fixed issue with Audio CDs that do not provide CDDB information. Patch by Andriy Gapon . (BR 257818) * Fixed issue with the Organize Files Dialog that prevented presets from being loaded when in advanced mode. Patch by Philipp Schmidt . (BR 255325) VERSION 2.4-Beta 1 FEATURES: * New UPnP Collection detects and plays media on UPnP devices on the network. * New transcoding feature which converts one or more tracks with a chosen encoder when copying to the local collection. * Added option to use Wikipedia Mobile. * Added settings for writing statistics and album covers back to the file. * Leave focus in playlist search widget when using up/down to scroll through filtered results. Thanks to Thomas Karpiniec for the patch! * LyricsApplet: The lyrics in are now updated when they were changed in a different place, for example in the Tag Dialog. * Permit the use of iPod Touch 3G and possibly newer devices. Thanks to Aurélien Croc for the patch! * Match space-separated search terms in the playlist filter var individually. Thanks to Thomas Karpiniec for the patch! * Added new context applet for displaying guitar and bass tab information. Thanks to Rainer Sigle for the patch! * Added ability to set/update Album Artist. * Added map view and calendar in the upcoming events applet. * Added support for all Wikipedia languages. (BR 220617) * Added incremental search in the Wikipedia applet (press '/' or global search key when in focus). * Added "Favorite Venues" to the upcoming events applet. * Read MusicBrainz IDs of MP4 files during scanning. * Ability to hide and show the menu bar. Patch by Valentyn Pavliuchenko . * Size of the On-Screen-Display font is now configurable. (BR 195186) * Musicbrainz-based mass tagging UI by Sergey Ivanov. * New easy to use table-based UI for Ampache server configuration. (BR 200703) * OPML export for podcast subscriptions. (BR 126120) * New "Playlist Length" constraint for the APG, which allows you to specify the number of tracks in the playlist. What was the "Playlist Length " constraint is now called "Playlist Duration". * MPRIS2 support for controlling Amarok over D-Bus. * New "Playdar Collection" allows searching for and listening to music provided by a running local Playdar service. CHANGES: * Brought back collapsing animations of context applets. * Added a "Donors" tab to the About dialog for our generous Roktober 2010 donors who wish to be mentioned. * Tracks might contain lyrics in the HTML format, where there's no user-visible content in the HTML. Those lyrics are now regarded as "empty". * LyricsApplet: changed the layout of the "Do you really want to refetch lyrics" message. * Current track applet: added "show in media sources" actions for current track's artist, album, composer, genre, and year if available. * Current track applet: added action to open the tag dialog. * Improved appearance of current track applet when playback is stopped. * Better scrolling in the applet explorer. * The default moodbar style now uses system colors. * Added tray icon context-menu action to open the preferences dialog. * Show a progress bar while loading pages in the Wikipedia applet. * Added option to right-align "year" in the albums applet. * Improved alignment of tracks in the albums applet. * Scroll to the current album and make its tracks visible in the albums applet. (BR 187011) * Added ability to expand/collapse/drag disc items in the albums applet. (BR 249488) * Improved appearance of similar artist, upcoming events, and Wikipedia applets. * Improved presentation of suggested lyrics (currently only 3rd party scripts use). * Now using QToolTip for playlist tooltips. * Changed playlist delegate margins and inline editor formating. * Added "Added This Hour" filter preset to the collection brower widget. * Bumped KDE dependency to version 4.4., and Qt dependency to 4.6. * Print message when a file can't be copied to a media player. Patch by Sergey Ivanov <123kash@@gmail.com>. (BR 203820) * Improved the usability of device items in Media Sources by adding tooltips. * Deleting items in the collection/file browser will move them to trash; pressing SHIFT while clicking the action will bypass trash. BUGFIXES: * Fixed white text on light blue background in tabs applet. (BR 258234) * Fixed cover dialog crash pressing Ok when nothing is selected. (BR 258187) * Title labels incorrectly used the text color from the plasma theme. This caused trouble with the fixed plasma theme and light color schemes. * Fixed a data-loss bug where the user could lose changes he made to the current track's lyrics. (BR 207621) * Fixed covers of Ampache tracks not available through DBus. * Scanning stale and orphaned songs on iPod results in song duplication. (BR 235696) * Applets' settings dialogs were partly untranslatable. (BR 255971) * Fixed append&play action. Thanks Pieter van der Kloet for the patch. (BR 229706) * Don't ignore the "use relative path" checkbox in the playlist export dialog. (BR 250689) * Fixed applet explorer getting stuck. (BR 253058) * Fixed Wikipedia applet header layout issues. (BR 215171) * Fixed truncated heading in albums applet. (BR 231001) * Playlist sorting breadcrumb items have been untranslatable. Patch by Alexander Potashev . (BR 189750) * Dynamic Playlist criteria were not being saved properly. (BR 243562) * Collection Browser should show Artist names for Compilation Albums. (BR 252790) * When Amarok starts and "Continue playing when Amarok is started" is selected, the Current Track applet showed songs of the artist instead of the current track info. Patch by Conrad Hübler. (BR 241641) * Fixed crash on Windows when exporting playlist to any file type. Patch by James Duncan . (BR 249376) * If album keyword is empty, show "unknown album" in context window. (BR 205038) * Ampache would not connect to servers placed in a subdirectory. * Fixed an initialization bug which affected all context applets. * Fixed bug where users could drag applets around indiscriminately. * FLAC BPM tags could be read incorrectly. (BR 234166) ==BEGIN Qt 4.6 / KDE 4.4 DEPENDENCY== @ text @$NetBSD: patch-ad,v 1.3 2010/10/02 10:08:31 wiz Exp $ commit 7dbec1171386f182be77942ae43dc3684a96cfc4 Author: Mark Kretschmann Date: Sat Oct 2 09:06:11 2010 +0200 Better workaround for wrong applet size on startup. This version also works in the case that Amarok was hidden to tray before starting, and it does not produce a jerking motion when starting in fullscreen mode. Thanks to Felix Geyer for the idea. It might worth to include this patch in Amarok packages. --- src/App.h.orig 2010-09-15 21:24:11.000000000 +0000 +++ src/App.h @@@@ -83,7 +83,6 @@@@ class AMAROK_EXPORT App : public KUnique private slots: void continueInit(); - void resizeMainWindow(); public slots: void applySettings( bool firstTime = false ); @ 1.3 log @Commit following patch per upstream's suggestion: commit 7dbec1171386f182be77942ae43dc3684a96cfc4 Author: Mark Kretschmann Date: Sat Oct 2 09:06:11 2010 +0200 Better workaround for wrong applet size on startup. This version also works in the case that Amarok was hidden to tray before starting, and it does not produce a jerking motion when starting in fullscreen mode. Thanks to Felix Geyer for the idea. It might worth to include this patch in Amarok packages. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD$ @ 1.2 log @Update to 2.2.2nb3 from wip, packaged by myself. This is the KDE4 version of amarok, lots of changes. Try it out! @ text @d1 1 a1 1 $NetBSD: patch-ad,v 1.1 2009/01/12 12:33:40 wiz Exp $ d3 3 a5 1 Security fix, SVN r908415 from upstream 1.4.x branch. d7 12 a18 53 --- amarok/src/metadata/audible/audibletag.cpp.orig 2008-08-13 23:21:51.000000000 +0200 +++ amarok/src/metadata/audible/audibletag.cpp @@@@ -71,7 +71,8 @@@@ void Audible::Tag::readTags( FILE *fp ) { char buf[1023]; fseek(fp, OFF_PRODUCT_ID, SEEK_SET); - fread(buf, strlen("product_id"), 1, fp); + if (fread(buf, strlen("product_id"), 1, fp) != 1) + return; if(memcmp(buf, "product_id", strlen("product_id"))) { buf[20]='\0'; @@@@ -130,24 +131,65 @@@@ void Audible::Tag::readTags( FILE *fp ) bool Audible::Tag::readTag( FILE *fp, char **name, char **value) { + // arbitrary value that has to be smaller than 2^32-1 and that should be large enough for all tags + const uint32_t maxtaglen = 100000; + uint32_t nlen; - fread(&nlen, sizeof(nlen), 1, fp); + if (fread(&nlen, sizeof(nlen), 1, fp) != 1) + return false; nlen = ntohl(nlen); //fprintf(stderr, "tagname len=%x\n", (unsigned)nlen); - *name = new char[nlen+1]; - (*name)[nlen] = '\0'; + if (nlen > maxtaglen) + return false; uint32_t vlen; - fread(&vlen, sizeof(vlen), 1, fp); + if (fread(&vlen, sizeof(vlen), 1, fp) != 1) + return false; vlen = ntohl(vlen); //fprintf(stderr, "tag len=%x\n", (unsigned)vlen); + if (vlen > maxtaglen) + return false; + + *name = new char[nlen+1]; + if (!*name) + return false; + *value = new char[vlen+1]; + if (!*value) + { + delete[] *name; + *name = 0; + return false; + } + + (*name)[nlen] = '\0'; (*value)[vlen] = '\0'; d20 3 a22 29 - fread(*name, nlen, 1, fp); - fread(*value, vlen, 1, fp); + if (fread(*name, nlen, 1, fp) != 1) + { + delete[] *name; + *name = 0; + delete[] *value; + *value = 0; + return false; + } + if (fread(*value, vlen, 1, fp) != 1) + { + delete[] *name; + *name = 0; + delete[] *value; + *value = 0; + return false; + } char lasttag; - fread(&lasttag, 1, 1, fp); + if (fread(&lasttag, 1, 1, fp) != 1) + { + delete[] *name; + *name = 0; + delete[] *value; + *value = 0; + return false; + } //fprintf(stderr, "%s: \"%s\"\n", *name, *value); d24 2 a25 1 m_tagsEndOffset += 2 * 4 + nlen + vlen + 1; @ 1.1 log @Fix security problem: * Fix possible buffer overflows when parsing Audible .aa files. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD$ @ 1.1.2.1 log @file patch-ad was added on branch pkgsrc-2008Q4 on 2009-01-14 06:46:53 +0000 @ text @d1 89 @ 1.1.2.2 log @pullup ticket #2632 - requested by wiz amarok: fix possible buffer overflows revisions pulled up: pkgsrc/audio/amarok/Makefile 1.69 pkgsrc/audio/amarok/distinfo 1.36 pkgsrc/audio/amarok/patches/patch-ad 1.1 Module Name: pkgsrc Committed By: wiz Date: Mon Jan 12 12:33:40 UTC 2009 Modified Files: pkgsrc/audio/amarok: Makefile distinfo Added Files: pkgsrc/audio/amarok/patches: patch-ad Log Message: Fix security problem: * Fix possible buffer overflows when parsing Audible .aa files. Bump PKGREVISION. @ text @a0 89 $NetBSD: patch-ad,v 1.1 2009/01/12 12:33:40 wiz Exp $ Security fix, SVN r908415 from upstream 1.4.x branch. --- amarok/src/metadata/audible/audibletag.cpp.orig 2008-08-13 23:21:51.000000000 +0200 +++ amarok/src/metadata/audible/audibletag.cpp @@@@ -71,7 +71,8 @@@@ void Audible::Tag::readTags( FILE *fp ) { char buf[1023]; fseek(fp, OFF_PRODUCT_ID, SEEK_SET); - fread(buf, strlen("product_id"), 1, fp); + if (fread(buf, strlen("product_id"), 1, fp) != 1) + return; if(memcmp(buf, "product_id", strlen("product_id"))) { buf[20]='\0'; @@@@ -130,24 +131,65 @@@@ void Audible::Tag::readTags( FILE *fp ) bool Audible::Tag::readTag( FILE *fp, char **name, char **value) { + // arbitrary value that has to be smaller than 2^32-1 and that should be large enough for all tags + const uint32_t maxtaglen = 100000; + uint32_t nlen; - fread(&nlen, sizeof(nlen), 1, fp); + if (fread(&nlen, sizeof(nlen), 1, fp) != 1) + return false; nlen = ntohl(nlen); //fprintf(stderr, "tagname len=%x\n", (unsigned)nlen); - *name = new char[nlen+1]; - (*name)[nlen] = '\0'; + if (nlen > maxtaglen) + return false; uint32_t vlen; - fread(&vlen, sizeof(vlen), 1, fp); + if (fread(&vlen, sizeof(vlen), 1, fp) != 1) + return false; vlen = ntohl(vlen); //fprintf(stderr, "tag len=%x\n", (unsigned)vlen); + if (vlen > maxtaglen) + return false; + + *name = new char[nlen+1]; + if (!*name) + return false; + *value = new char[vlen+1]; + if (!*value) + { + delete[] *name; + *name = 0; + return false; + } + + (*name)[nlen] = '\0'; (*value)[vlen] = '\0'; - fread(*name, nlen, 1, fp); - fread(*value, vlen, 1, fp); + if (fread(*name, nlen, 1, fp) != 1) + { + delete[] *name; + *name = 0; + delete[] *value; + *value = 0; + return false; + } + if (fread(*value, vlen, 1, fp) != 1) + { + delete[] *name; + *name = 0; + delete[] *value; + *value = 0; + return false; + } char lasttag; - fread(&lasttag, 1, 1, fp); + if (fread(&lasttag, 1, 1, fp) != 1) + { + delete[] *name; + *name = 0; + delete[] *value; + *value = 0; + return false; + } //fprintf(stderr, "%s: \"%s\"\n", *name, *value); m_tagsEndOffset += 2 * 4 + nlen + vlen + 1; @