まつもと ゆきひろです.
In message "[ruby-list:2196] [BUG] pack/unpack [Re: [Req] pack/unpack]"
on 97/02/19, 石塚圭樹 <keiju / shljapan.co.jp> writes:
|けいじゅ@SHLジャパンです.
|それはいいのですが, pack/unpack関係でバグ?と思われるものを発見しました.
Aなのにaと同じ処理をしていました.
|さらに, unpackはめちゃくちゃです.
スペースの読み飛ばしにバグが残っていますね.
--- pack.c~ Fri Feb 7 17:01:55 1997
+++ pack.c Wed Feb 19 16:08:04 1997
@@ -150,9 +150,6 @@
while (len >= 10) {
- if (type == 'A')
- str_cat(res, spc10, 10);
- else
- str_cat(res, nul10, 10);
+ str_cat(res, (type == 'A')?spc10:nul10, 10);
len -= 10;
}
- str_cat(res, nul10, len);
+ str_cat(res, (type == 'A')?spc10:nul10, len);
}
@@ -545,2 +542,3 @@
{
+ int end = len;
char *t = s + len - 1;
@@ -552,3 +550,7 @@
}
+ ary_push(ary, str_new(s, len));
+ s += end;
}
+ break;
+
case 'a':