Review Request 109758: Asx playlist implementation.

Matěj Laitl matej at laitl.cz
Thu Apr 11 23:58:49 UTC 2013


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/109758/#review30945
-----------------------------------------------------------


I've actually tested this patch, but it doesn't work as expected. First problem is that if I save and .asx playlist and then load it, the tracks don't load and stay grayed-out, probably because of their url is lowercased when the playlist is read. (the urls seem file inside the file) At this point I wonder why the test for .axs playlis passes just fine. Another problem is crash below.


src/core-impl/playlists/types/file/asx/ASXPlaylist.cpp
<http://git.reviewboard.kde.org/r/109758/#comment22973>

    typo: authhor   (I assume)


When I put an .asx playlist I've saved using Export playlist as under .kde/share/apps/amarok/playlists/ Amarok crashes on the following run when I open "Playlist Files on Disk" in Saved Playlists.
Thread 1 (Thread 0x7fb4bc2cf780 (LWP 19123)):
[KCrash Handler]
#6  0x00007fb4b8d66ad5 in *__GI_raise (sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#7  0x00007fb4b8d67f56 in *__GI_abort () at abort.c:91
#8  0x00007fb4b9459374 in qt_message_output (msgType=<optimized out>, buf=<optimized out>) at global/qglobal.cpp:2323
#9  0x00007fb4b94594ef in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7fb4b95dcc38 "ASSERT: \"%s\" in file %s, line %d", ap=0x7fff430027f8) at global/qglobal.cpp:2369
#10 0x00007fb4b945969c in qFatal (msg=<optimized out>) at global/qglobal.cpp:2552
#11 0x00007fb4bb1d3bc4 in KSharedPtr<KMimeType>::operator-> (this=0x7fff430028e0) at /usr/include/KDE/../ksharedptr.h:126
#12 0x00007fb4bb1d35e0 in Playlists::PlaylistFile::description (this=0x2f14820) at /home/strohel/projekty/amarok/src/core-impl/playlists/types/file/PlaylistFile.cpp:155
#13 0x00007fb4bb2391c6 in PlaylistBrowserNS::PlaylistBrowserModel::data (this=0x2bdacd0, index=..., role=91) at /home/strohel/projekty/amarok/src/browsers/playlistbrowser/PlaylistBrowserModel.cpp:110
#14 0x00007fb4bb08ade1 in QModelIndex::data (this=<optimized out>, arole=<optimized out>) at /usr/include/qt4/QtCore/qabstractitemmodel.h:402
#15 0x00007fb4bb241b8f in QtGroupingProxy::data (this=0x2bec920, index=..., role=91) at /home/strohel/projekty/amarok/src/browsers/playlistbrowser/QtGroupingProxy.cpp:439
#16 0x00007fb4bb24b5e9 in PlaylistsByProviderProxy::data (this=0x2bec920, idx=..., role=91) at /home/strohel/projekty/amarok/src/browsers/playlistbrowser/PlaylistsByProviderProxy.cpp:76
#17 0x00007fb4ba5d5136 in QSortFilterProxyModel::data (this=<optimized out>, index=..., role=91) at itemviews/qsortfilterproxymodel.cpp:1735
#18 0x00007fb4bb08ade1 in QModelIndex::data (this=<optimized out>, arole=<optimized out>) at /usr/include/qt4/QtCore/qabstractitemmodel.h:402
#19 0x00007fb4bb391666 in PrettyTreeDelegate::sizeHint (this=0x2bfd8e0, option=..., index=...) at /home/strohel/projekty/amarok/src/widgets/PrettyTreeDelegate.cpp:256
#20 0x00007fb4ba58af33 in QTreeView::indexRowSizeHint (this=<optimized out>, index=...) at itemviews/qtreeview.cpp:2815
#21 0x00007fb4ba58b2c4 in itemHeight (item=2, this=0x2beff40) at itemviews/qtreeview.cpp:3265
#22 QTreeViewPrivate::itemHeight (this=0x2beff40, item=2) at itemviews/qtreeview.cpp:3254
#23 0x00007fb4ba58e0a2 in QTreeViewPrivate::beginAnimatedOperation (this=0x2beff40) at itemviews/qtreeview.cpp:3037
#24 0x00007fb4ba593642 in QTreeViewPrivate::expand (this=0x2beff40, item=1, emitSignal=true) at itemviews/qtreeview.cpp:2903
#25 0x00007fb4ba594da0 in QTreeView::expand (this=0x2bef6e0, index=...) at itemviews/qtreeview.cpp:759
#26 0x00007fb4bb390d15 in Amarok::PrettyTreeView::mouseReleaseEvent (this=0x2bef6e0, event=0x7fff430042f0) at /home/strohel/projekty/amarok/src/widgets/PrettyTreeView.cpp:192
#27 0x00007fb4bb246ceb in PlaylistBrowserNS::PlaylistBrowserView::mouseReleaseEvent (this=0x2bef6e0, event=0x7fff430042f0) at /home/strohel/projekty/amarok/src/browsers/playlistbrowser/PlaylistBrowserView.cpp:98
#28 0x00007fb4ba008c1e in QWidget::event (this=0x2bef6e0, event=0x7fff430042f0) at kernel/qwidget.cpp:8375
#29 0x00007fb4ba414616 in QFrame::event (this=0x2bef6e0, e=0x7fff430042f0) at widgets/qframe.cpp:557
#30 0x00007fb4ba540edb in QAbstractItemView::viewportEvent (this=0x2bef6e0, event=0x7fff430042f0) at itemviews/qabstractitemview.cpp:1644
#31 0x00007fb4bb390b5b in Amarok::PrettyTreeView::viewportEvent (this=0x2bef6e0, event=0x7fff430042f0) at /home/strohel/projekty/amarok/src/widgets/PrettyTreeView.cpp:225
#32 0x00007fb4b9571014 in QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<optimized out>, receiver=0x2bf0ad0, event=0x7fff430042f0) at kernel/qcoreapplication.cpp:1056
#33 0x00007fb4b9faf3e9 in notify_helper (e=0x7fff430042f0, receiver=0x2bf0ad0, this=0x1c37670) at kernel/qapplication.cpp:4558
#34 QApplicationPrivate::notify_helper (this=0x1c37670, receiver=0x2bf0ad0, e=0x7fff430042f0) at kernel/qapplication.cpp:4534
#35 0x00007fb4b9fb581a in QApplication::notify (this=<optimized out>, receiver=0x2bf0ad0, e=0x7fff430042f0) at kernel/qapplication.cpp:4105
#36 0x00007fb4bbcea1a6 in KApplication::notify (this=0x7fff43004e50, receiver=0x2bf0ad0, event=0x7fff430042f0) at /var/tmp/portage/kde-base/kdelibs-4.10.1-r1/work/kdelibs-4.10.1/kdeui/kernel/kapplication.cpp:311
#37 0x00007fb4b9570e1c in QCoreApplication::notifyInternal (this=0x7fff43004e50, receiver=0x2bf0ad0, event=0x7fff430042f0) at kernel/qcoreapplication.cpp:946
#38 0x00007fb4b9fb08b4 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#39 QApplicationPrivate::sendMouseEvent (receiver=0x2bf0ad0, event=0x7fff430042f0, alienWidget=0x2bf0ad0, nativeWidget=0x25e9da0, buttonDown=<optimized out>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3173
#40 0x00007fb4ba038088 in QETWidget::translateMouseEvent (this=0x25e9da0, event=<optimized out>) at kernel/qapplication_x11.cpp:4516
#41 0x00007fb4ba036b62 in QApplication::x11ProcessEvent (this=0x7fff43004e50, event=0x7fff43004a10) at kernel/qapplication_x11.cpp:3639
#42 0x00007fb4ba0602d2 in x11EventSourceDispatch (s=0x1c38970, callback=0x0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#43 0x00007fb4b200a653 in g_main_dispatch (context=0x1c38740) at gmain.c:2539
#44 g_main_context_dispatch (context=0x1c38740) at gmain.c:3075
#45 0x00007fb4b200a998 in g_main_context_iterate (context=0x1c38740, block=1, dispatch=1, self=<optimized out>) at gmain.c:3146
#46 0x00007fb4b200aa54 in g_main_context_iteration (context=0x1c38740, may_block=1) at gmain.c:3207
#47 0x00007fb4b95a324f in QEventDispatcherGlib::processEvents (this=0x1c36c00, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#48 0x00007fb4ba05ff4e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#49 0x00007fb4b956f112 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#50 0x00007fb4b956f357 in QEventLoop::exec (this=0x7fff43004de0, flags=...) at kernel/qeventloop.cpp:204
#51 0x00007fb4b9574bb7 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218
#52 0x0000000000407e23 in main (argc=1, argv=0x7fff430073e8) at /home/strohel/projekty/amarok/src/main.cpp:329

- Matěj Laitl


On April 9, 2013, 8:24 p.m., Tatjana Gornak wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/109758/
> -----------------------------------------------------------
> 
> (Updated April 9, 2013, 8:24 p.m.)
> 
> 
> Review request for Amarok.
> 
> 
> Description
> -------
> 
> Asx playlist implementation.
> 
> P.S. This patch make sense only if https://git.reviewboard.kde.org/r/107473/ will be accepted
> 
> 
> This addresses bug 170207.
>     https://bugs.kde.org/show_bug.cgi?id=170207
> 
> 
> Diffs
> -----
> 
>   ChangeLog 7b394ac 
>   src/CMakeLists.txt d667d95 
>   src/MainWindow.cpp 07dca94 
>   src/core-impl/playlists/providers/user/UserPlaylistProvider.cpp e19769d 
>   src/core-impl/playlists/types/file/PlaylistFileSupport.cpp 82de3a6 
>   src/core-impl/playlists/types/file/asx/ASXPlaylist.h PRE-CREATION 
>   src/core-impl/playlists/types/file/asx/ASXPlaylist.cpp PRE-CREATION 
>   src/core/playlists/PlaylistFormat.cpp 6b3cb6b 
>   src/playlistmanager/file/PlaylistFileProvider.cpp 4a5639e 
>   tests/core-impl/playlists/types/file/CMakeLists.txt ef69236 
>   tests/core-impl/playlists/types/file/asx/TestASXPlaylist.h PRE-CREATION 
>   tests/core-impl/playlists/types/file/asx/TestASXPlaylist.cpp PRE-CREATION 
> 
> Diff: http://git.reviewboard.kde.org/r/109758/diff/
> 
> 
> Testing
> -------
> 
> Loading and saving works
> 
> 
> Thanks,
> 
> Tatjana Gornak
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/amarok-devel/attachments/20130411/8d3885fc/attachment-0001.html>


More information about the Amarok-devel mailing list