You need to do something like this to clear it:
while(openssl_error_string() !== false);
Some openssl functions will add errors to the list even if they succeed.
(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
openssl_error_string — OpenSSL エラーメッセージを返す
openssl_error_string() は、 OpenSSL ライブラリから直近のエラーを返します。 エラーメッセージはキューに格納されるので、 すべての情報を集めるにはこの関数を複数回コールする必要があります。 最後のエラーが、いちばん最近に発生したエラーとなります。
この関数にはパラメータはありません。
エラーメッセージ文字列を返します。
エラーメッセージがもうない場合は、false
を返します。
例1 openssl_error_string() の例
<?php
// ここで、処理に失敗する OpenSSL 関数をコールしたと仮定します
while ($msg = openssl_error_string())
echo $msg . "<br />\n";
?>
You need to do something like this to clear it:
while(openssl_error_string() !== false);
Some openssl functions will add errors to the list even if they succeed.
Note that there may be two (or more) lines for one error.
Best to clear it out and read it for each openssl call.
PS
There are no "threads" and if the other library doesn't have enough sense to read (and therefore clear) the queue (errr, dequeue) of messages before and after their openssl calls...
A) That's their problem
B) Look for a new library, because NOT doing that means they aren't writing their code properly.