<p>Well, it's an interesting problem but I'm not sure it totally qualifies as a bug.<br>
Your sample file leads to infinite recursion, thus exploding the stack and leading to the crash.  This makes GDB return 104806 stack frames (on my machine), which, well, is a lot.  The hang you see is the time the plugin takes to process all the frames and populate the <em>Call Stack</em> tab.</p>

<p>There is an easy optimization that makes a part of the process quite a lot faster (in <em>dbm_gdb.c:get_stack()</em>), but it's still a tiny part of the overall time it takes, which is almost entirely taken building the <em>Call Stack</em> tab.<br>
Not quite sure what can be done here apart making the whole thing a lot faster (not sure how), or make the population incremental (probably tricky in the current state, and not very practical for the user as the frames will be missing).</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br>Reply to this email directly or <a href="https://github.com/geany/geany-plugins/issues/347#issuecomment-178932997">view it on GitHub</a>.<img alt="" height="1" src="https://github.com/notifications/beacon/ABDrJ-ftP3xBn1l0TYYRo7gYWcsiM23Mks5pgUrhgaJpZM4HR-cn.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/geany/geany-plugins/issues/347#issuecomment-178932997"></link>
  <meta itemprop="name" content="View Issue"></meta>
</div>
<meta itemprop="description" content="View this Issue on GitHub"></meta>
</div>