14/10/12 16:08:38.95 sZHmv5Uw
systemdにしてから、recpt1が上手く行かなくなった。デコードされずに生ストリームで録画するようになった。
挙動を調べたら、pcscdの起動が完了する前にB-CASカードを取ろうとしてlibarib25がこけて、生ストリーム吐くモードに移行してた。
しょうがないから、pcscd起動させてからカードが刺さってるかどうか調べるまで一秒待たせてみた。
パッチ↓
動作保証はしない(`・ω・´)
-------------
--- b_cas_card.c.orig 2014-10-12 15:46:34.290926326 +0900
+++ b_cas_card.c 2014-10-12 15:56:53.274764391 +0900
@@ -3,6 +3,7 @@
#include <stdlib.h>
#include <string.h>
+#include <unistd.h>
#include <math.h>
@@ -153,7 +154,8 @@
if(ret != SCARD_S_SUCCESS){
return B_CAS_CARD_ERROR_NO_SMART_CARD_READER;
}
-
+ sleep(1); // Dirty hack.
+
ret = SCardListReaders(prv->mng, NULL, NULL, &len);
if(ret != SCARD_S_SUCCESS){
return B_CAS_CARD_ERROR_NO_SMART_CARD_READER;