<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class="">Sorry for leading you to misunderstand.</div><div class=""><br class=""></div><div class=""><blockquote type="cite" class="">Doesn't your compiler warn you about passing an argument of wrong type<br class="">to pa_context_errno()? The function expects a pa_context object, but in<br class="">the first case you're passing it a pa_stream object.</blockquote><div class=""><br class=""></div><div class="">I got warning in the first case, so I changed the code like this:</div><div class=""><br class=""></div><div class=""><div class="">switch(pa_stream_get_state(s)){</div><div class="">case PA_STREAM_FAILED:</div><div class="">  printf("%s\n, pa_strerror(pa_context_errno(pa_stream_get_context(s))));</div></div><div class=""><br class=""></div></div><div class="">After that, I got error “Invalid argument”.</div><div class=""><br class=""></div><div class="">Best Regards,</div><div class=""><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">Shinnosuke Suzuki</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;"><br class=""></div></div><div><blockquote type="cite" class=""><div class="">2017/10/21 3:20、Tanu Kaskinen <<a href="mailto:tanuk@iki.fi" class="">tanuk@iki.fi</a>>のメール:</div><br class="Apple-interchange-newline"><div class=""><div class="">On Wed, 2017-10-18 at 17:29 +0900, Shinnosuke Suzuki wrote:<br class=""><blockquote type="cite" class="">Dear tanu,<br class=""><br class=""><blockquote type="cite" class="">Are the two pa_context pointers different? You should have just one<br class="">context.<br class=""></blockquote><br class="">Yes, I called function like this in the stream callback: (s : pa_stream *s)<br class="">switch(pa_stream_get_state){<br class=""> case PA_STREAM_FAILED:<br class="">   printf("%s\n, pa_strerror(pa_context_errno(s));<br class="">   printf("%s\n, pa_strerror(pa_context_errno(pa_stream_get_context(s))));<br class="">I check the argument, first one is wrong argument, so I got error "Invalid<br class="">argument" in second printf().<br class=""></blockquote><br class="">Doesn't your compiler warn you about passing an argument of wrong type<br class="">to pa_context_errno()? The function expects a pa_context object, but in<br class="">the first case you're passing it a pa_stream object.<br class=""><br class="">-- <br class="">Tanu<br class=""><br class=""><a href="https://www.patreon.com/tanuk" class="">https://www.patreon.com/tanuk</a><br class=""></div></div></blockquote></div><br class=""></body></html>