[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
[MD:5001] Re: crash Meadow-2.00pre2
- X-ml-count: 5001
- Subject: [MD:5001] Re: crash Meadow-2.00pre2
- From: Kyotaro HORIGUCHI <horiguti@xxxxxxxxxxx>
- Date: Thu, 20 May 2004 22:32:07 +0900 (JST)
- User-agent: Mew version 4.0.65 on Emacs 21.1 / Mule 5.0 (榊) / Meadow-2.00pre2 (桔梗)
> (1) 矢木さんの .emacs の (require 'jisx0213) をコメントアウト
> (2) M-x tetris
> (3) C-h SPC
私のところでも再現できたのでちょっと眺めてみましたが, 原因はきっ
ちりヒープの破壊ですね. リンクが壊れてます.
free_internal でリンクチェックのコードを入れるとmakeの途中で(el
のコンパイル(loadup)) ですでに終わってる;_;
# 勘違いじゃなければ動いているのが奇跡的な状況に見えます.
## 下のようなチェックでコア吐くはずはないですよね?
--- gmalloc.c (revision 3280)
+++ gmalloc.c (working copy)
@@ -1158,6 +1158,21 @@
prev = (struct list *) ((char *) ADDRESS (block) +
(_heapinfo[block].busy.info.frag.first << type));
+ {
+ struct list * p;
+ int i;
+ p = prev;
+ for(i = 0 ; i < 100000 ; i++) {
+ if(p == NULL) break;
+ p = p->prev;
+ }
+ p = prev;
+ for(i = 0 ; i < 100000 ; i++) {
+ if(p == NULL) break;
+ p = p->next;
+ }
+ }
+
if (_heapinfo[block].busy.info.frag.nfree == (BLOCKSIZE >> type) - 1)
{
/* If all fragments of this block are free, remove them
--
ほりぐちきょうたろう