<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - pavucontrol crashes on startup, if icon loading fails"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=88813">88813</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>pavucontrol crashes on startup, if icon loading fails
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>PulseAudio
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>pavucontrol
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>pulseaudio-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>martin@steghoefer.eu
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>pulseaudio-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>lennart@poettering.net
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Created <span class=""><a href="attachment.cgi?id=112862" name="attach_112862" title="Patch that extends the fallback behaviour on failed icon loading to exceptions of type "Gdk::PixbufError"">attachment 112862</a> <a href="attachment.cgi?id=112862&action=edit" title="Patch that extends the fallback behaviour on failed icon loading to exceptions of type "Gdk::PixbufError"">[details]</a></span>
Patch that extends the fallback behaviour on failed icon loading to exceptions
of type "Gdk::PixbufError"

Due to another bug [1] the MIME type guessing of PNG files was broken on my
Ubuntu system. This made pavucontrol crash on startup (while loading the
necessary icons) without a helpful error message (requiring a lot of debugging
effort). Although this is not originally pavucontrol's fault, I think that
pavucontrol could be more robust about such a problem, especially because: A)
In a complex database like the one to guess MIME types (that is populated from
hundres of different packages) this can happen from time to time and B)
pavucontrol already has some fallback options in place - they are just not
active in this specific case.

Specifically, the function "set_icon_name_fallback" already catches several
exceptions ("Gtk::IconThemeError" and "Gio::Error") about failed loading of
icons and falls back to just setting the name and using a default icon. I think
it's in the spirit of that code to extend that behaviour to the additional
exception type "Gdk::PixbufError", which is the exception that is thrown, if an
icon cannot be loaded due to broken MIME type guessing. Find a patch attached
that implements this.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>