<html><body><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; color: #000000"><div data-marker="__QUOTED_TEXT__"><div style="font-family: arial, helvetica, sans-serif; font-size: 12pt; color: #000000"><div>Hello,<br></div><br><div>  bug report for vlc-2.1.6 (also in latest 2.2.4): we use libvlccore in one thread of our multi-threaded application, and observe the function vlc_getProxyUrl() to (often) hang forever in this loop:<br></div><br><div>        while (waitpid(pid, &(int){ 0 }, 0) == -1);<br><br></div><div>The reason for this is that another thread might have already handled the wait(), and the process "pid" does not exist anymore, resulting in waitpid(pid) returning -1 (with errno==ECHILD) forever.<br></div><br><div>It definitely does not make sense to repeat calling waitpid for a pid which does not exist anymore.  Proposed patch is attached.<br></div><div><br data-mce-bogus="1"></div><div>BTW: the second parameter of waitpid() might be simplified to (int *)NULL.<br data-mce-bogus="1"></div><br>Kind regards,<br><div>-- <br>i. A. Andreas Luik<br>Senior System Integrator<br>in-innovative navigation GmbH<br>phone: +49 7154 807171<br>fax:   +49 7154 807154<br>email: Andreas.Luik@innovative-navigation.de<br><br>in-innovative navigation GmbH, Leibnizstrasse 11, D-70806 Kornwestheim<br>Geschäftsführer/Managing Directors:<br>Dr. Thomas Gern, Dr. Martin Sandler, Dr. Reinhard Zimmermann, Uwe Vögele<br>Handelsregister: Stuttgart HRB 205770<br><br>in-innovative navigation GmbH is ISO 9001:2008 certified.</div></div><br></div></div></body></html>