+1は苦し紛れにあーだこーだいじる過程でダメ元で付加してみたのでした。
末端に不定の1バイトが付加されるので無駄な容量食いではありますが、危険という認識はありませんでした。
早急に削除します。
そして、自己解決しました。if文の連結順序を誤解していました。何故今まで動いていたんだ・・・。
if ( size = FileRead_size( filename ) == -1 ) errmsg( NOTREAD ,filename );
if ( h = FileRead_open( filename ) == 0 ) errmsg( NOTOPEN ,filename );
↑これは↓こうですね。
if ( (size = FileRead_size( filename )) == -1 ) errmsg( NOTREAD ,filename );
if ( (h = FileRead_open( filename )) == 0 ) errmsg( NOTOPEN ,filename );
お騒がせしました。