<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html><body style='font-family: Verdana,Geneva,sans-serif'>
<p><span style="font-family: 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif;">Am 01.05.2013 06:31, schrieb Miika Turkia:</span></p>
<blockquote type="cite" style="padding-left:5px; border-left:#1010ff 2px solid; margin-left:5px; width:100%">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">On Tue, Apr 30, 2013 at 11:41 PM, Manfred Usselmann <span><<a href="mailto:usselmann.m@icg-online.de">usselmann.m@icg-online.de</a>></span> wrote:<br />
<blockquote class="gmail_quote" style="margin: 0  0  0  .8ex; border-left: 1px  #ccc  solid; padding-left: 1ex;">
<div style="font-family: Verdana,Geneva,sans-serif;">
<div class="im">
<blockquote style="padding-left: 5px; border-left: #1010ff  2px  solid; margin-left: 5px; width: 100%;">
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote"><span>* KPhotoAlbum is insanely searching for icon "file-broken" (png, svg and possibly some other versions of it). At least on my system this occurs and renders KPA useless. I did not find any package providing such an icon, but a quick hack to just create an empty file with such name gets KPA functioning properly (sudo touch /usr/share/icons/oxygen/8x8/emblems/file-broken.png). Of course I cannot test with Manfred's images, but at least the empty index.xml file loads.</span></div>
<div class="gmail_quote">  - KPA should be fixed to handle the case when broken image icon is not found</div>
</div>
</div>
</blockquote>
</div>
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">For now I'm using the workaround to create file-broken.png, but it seems there is already a fix in the development version. Thanks...</div>
<div class="gmail_quote">But something is still wrong even when <span>/usr/share/icons/oxygen/8x8/emblems/file-broken.png exists</span>, KPA is still very slow opening the detail view and switching between pictures and also going back to Home. Maybe it's looking for different icons besides <span>file-broken.png? Or I need to use a different folder than the one mentioned above?</span></div>
</div>
</div>
</div>
</blockquote>
<div> </div>
<div>You could run strace to see what is so slow. Run the KPA from a terminal with the command strace in front:</div>
<div>strace kphotoalbum<br /><br /></div>
<div>It will print out a lot of information about system calls that are called and slows everything down somewhat. When you do action that takes too long, see what is being written on the terminal. If there is e.g. plenty of attempts to open some image file from different directories, that is probably causing the slow down.</div>
<div> </div>
</div>
</div>
</div>
</blockquote>
<div dir="ltr">
<div class="gmail_extra">
<div class="gmail_quote">
<div>
<p>Thanks for mentioning strace, I didn't know this utility. During the delays the following is displayed:</p>
<p>poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"(\0\4\0\217\0\0\0005\0\340\7\222\0\264\4", 16}, {NULL, 0}, {"", 0}], 3) = 16<br />poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])<br />recvfrom(6, "\1\1\254\r\0\0\0\0\0\0\0\0s\0#\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"\2\0\4\0005\0\340\7\0@\0\0\0\0\0\0", 16}, {NULL, 0}, {"", 0}], 3) = 16<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"(\0\4\0\217\0\0\0005\0\340\7U\0\222\4", 16}, {NULL, 0}, {"", 0}], 3) = 16<br />poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])<br />recvfrom(6, "\1\1\256\r\0\0\0\0\0\0\0\0006\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"\2\0\4\0005\0\340\7\0@\0\0\0\0\0\0", 16}, {NULL, 0}, {"", 0}], 3) = 16<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"(\0\4\0\217\0\0\0005\0\340\7N\0\215\4", 16}, {NULL, 0}, {"", 0}], 3) = 16<br />poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])<br />recvfrom(6, "\1\1\260\r\0\0\0\0\0\0\0\0/\0\374\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"(\0\4\0\217\0\0\0\33\0\340\7N\0\215\4", 16}, {NULL, 0}, {"", 0}], 3) = 16<br />poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])<br />recvfrom(6, "\1\1\261\r\0\0\0\0\0\0\0\0/\0\374\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"&\0\2\0\217\0\0\0", 8}, {NULL, 0}, {"", 0}], 3) = 8<br />poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])<br />recvfrom(6, "\1\1\262\r\0\0\0\0\217\0\0\0\304\256\30\0014\0\200\0044\0\200\4\20\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"+\0\1\0", 4}, {NULL, 0}, {"", 0}], 3) = 4<br />poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])<br />recvfrom(6, "\1\1\263\r\0\0\0\0\33\0\340\7\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", 4096, 0, NULL, NULL) = 32<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />write(3, "\1\0\0\0\0\0\0\0", 8) = 8<br />poll([{fd=6, events=POLLIN|POLLOUT}], 1, 4294967295) = 1 ([{fd=6, revents=POLLOUT}])<br />writev(6, [{"\24\0\6\0\33\0\340\7^\1\0\0\4\0\0\0\0\0\0\0\0\4\0\0", 24}, {NULL, 0}, {"", 0}], 3) = 24<br />poll([{fd=6, events=POLLIN}], 1, 4294967295) = 1 ([{fd=6, revents=POLLIN}])<br />recvfrom(6, "\1 \264\r\1\0\0\0\4\0\0\0\0\0\0\0\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096, 0, NULL, NULL) = 36<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)<br />recvfrom(6, 0x15a1614, 4096, 0, 0, 0) = -1 EAGAIN (Resource temporarily unavailable)</p>
</div>
<div>Manfred</div>
</div>
</div>
</div>
</body></html>