gnugo-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnugo-devel] [pcibusgood: bugs report]


From: bump
Subject: [gnugo-devel] [pcibusgood: bugs report]
Date: Thu, 10 Jul 2003 05:44:11 -0700

------- Start of forwarded message -------
From: pcibusgood
To: bump
Subject: bugs report
Date: Thu, 10 Jul 2003 16:39:55 +0800

This is a multi-part message in MIME format.

- ------------10578263958217SINAEMAIL---
Content-Disposition: inline
Content-Transfer-Encoding: binary
Content-Type: text/plain;charset="gb2312"

bugs report:

version:gnugo 3.3.22
os:windows 2000
compiler:Visual C++ 6.0

English poor, pcibusgood.

1.memory leak report:

1.1 engine\owl.c 5354 line. leak 1,002,848 bytes.
owl_stack = malloc(owl_stack_size * sizeof(*owl_stack));

1.2 engine\cache.c 226 line. leak 3,632,172 bytes.
table->all_results = (Read_result *) malloc(num_results * sizeof(Read_result));

1.3 engine\cache.c 217 line. leak 3,459,216 bytes.
table->all_nodes = (Hashnode *) malloc(num_nodes * sizeof(Hashnode));

1.4 engine\cache.c 210 line. leak 1,297,204 bytes.
table->hashtable = (Hashnode **) malloc(tablesize * sizeof(Hashnode *));

1.2 1.3 1.4 in function
static int hashtable_init(Hashtable *table, int tablesize, int num_nodes, int 
num_results).

1.5 sgf\sgfnode.c 67 line. leak 323 bytes. (run more times)
void *pt = malloc(size);

1.6 sgf\sgfnode.c 81 line. leak 15 bytes.
void *ptnew = realloc(pt, size);

1.7 engine\cache.c 259 line. leak 36 bytes.
table = (Hashtable *) malloc(sizeof(Hashtable));

1.8 engine\dragon.c 746 line. leak 504 bytes. (run more times)
dragon2 = malloc(number_of_dragons * sizeof(*dragon2));
This bug unknown reason, free() can`t free memory.
memory leak increase. 168,504,840 ...
168 = sizeof(*dragon2). 168*3 = 504. 168*5=840.
number_of_dragons = 3 or number_of_dragons = 5.

2.error report:

2.1 Reading overflows memory (sometimes occur)
engine\utils.c 201 line.
pos = va_arg(ap, int);
engine\utils.c 393 line.in function play_attack_defend_n().
zpos = va_arg(ap, int);
engine\utils.c 480 line. in function play_attack_defend2_n().
zpos = va_arg(ap, int);

2.2 Reading uninitialized memory (sometimes occur)
engine\optics.c 1811 line.
int tmp_point = heye[pos].attack_point[r];
engine\optics.c 1820 line.
int tmp_point = heye[pos].defense_point[r];

2.3 Assigning pointer out of range (sometimes occur)
utils\gg_utils.c 379 line
char *end = (char *) base + width * (nel - 1);

2.4 Expression uses unrelated pointers (sometimes occur)
utils\gg_utils.c 384 line
for (a = base, b = a + gap * width; b <= end; a += width, b += width)

Repair 2.4:
The solution for this problem is to avoid using this construct, 
since it is undefined in ANSI C. 
However, this construct is supported on many systems and frequently used. 

BoundsChecker

china.
______________________________________

===================================================================


- ------------10578263958217SINAEMAIL---
Content-Disposition: inline;filename="bugs.txt"
Content-Transfer-Encoding: base64
Content-Type: application/x-msdownload; name="bugs.txt"

YnVncyByZXBvcnQ6DQoNCnZlcnNpb246Z251Z28gMy4zLjIyDQpvczp3aW5kb3dzIDIwMDANCmNvbXBp
bGVyOlZpc3VhbCBDKysgNi4wDQoNCkVuZ2xpc2ggcG9vciwgcGNpYnVzZ29vZC4NCg0KMS5tZW1vcnkg
bGVhayByZXBvcnQ6DQoNCjEuMSBlbmdpbmVcb3dsLmMgNTM1NCBsaW5lLiBsZWFrIDEsMDAyLDg0OCBi
eXRlcy4NCm93bF9zdGFjayA9IG1hbGxvYyhvd2xfc3RhY2tfc2l6ZSAqIHNpemVvZigqb3dsX3N0YWNr
KSk7DQoNCjEuMiBlbmdpbmVcY2FjaGUuYyAyMjYgbGluZS4gbGVhayAzLDYzMiwxNzIgYnl0ZXMuDQp0
YWJsZS0+YWxsX3Jlc3VsdHMgPSAoUmVhZF9yZXN1bHQgKikgbWFsbG9jKG51bV9yZXN1bHRzICogc2l6
ZW9mKFJlYWRfcmVzdWx0KSk7DQoNCjEuMyBlbmdpbmVcY2FjaGUuYyAyMTcgbGluZS4gbGVhayAzLDQ1
OSwyMTYgYnl0ZXMuDQp0YWJsZS0+YWxsX25vZGVzID0gKEhhc2hub2RlICopIG1hbGxvYyhudW1fbm9k
ZXMgKiBzaXplb2YoSGFzaG5vZGUpKTsNCg0KMS40IGVuZ2luZVxjYWNoZS5jIDIxMCBsaW5lLiBsZWFr
IDEsMjk3LDIwNCBieXRlcy4NCnRhYmxlLT5oYXNodGFibGUgPSAoSGFzaG5vZGUgKiopIG1hbGxvYyh0
YWJsZXNpemUgKiBzaXplb2YoSGFzaG5vZGUgKikpOw0KDQoxLjIgMS4zIDEuNCBpbiBmdW5jdGlvbg0K
c3RhdGljIGludCBoYXNodGFibGVfaW5pdChIYXNodGFibGUgKnRhYmxlLCBpbnQgdGFibGVzaXplLCBp
bnQgbnVtX25vZGVzLCBpbnQgbnVtX3Jlc3VsdHMpLg0KDQoxLjUgc2dmXHNnZm5vZGUuYyA2NyBsaW5l
LiBsZWFrIDMyMyBieXRlcy4gKHJ1biBtb3JlIHRpbWVzKQ0Kdm9pZCAqcHQgPSBtYWxsb2Moc2l6ZSk7
DQoNCjEuNiBzZ2Zcc2dmbm9kZS5jIDgxIGxpbmUuIGxlYWsgMTUgYnl0ZXMuDQp2b2lkICpwdG5ldyA9
IHJlYWxsb2MocHQsIHNpemUpOw0KDQoxLjcgZW5naW5lXGNhY2hlLmMgMjU5IGxpbmUuIGxlYWsgMzYg
Ynl0ZXMuDQp0YWJsZSA9IChIYXNodGFibGUgKikgbWFsbG9jKHNpemVvZihIYXNodGFibGUpKTsNCg0K
MS44IGVuZ2luZVxkcmFnb24uYyA3NDYgbGluZS4gbGVhayA1MDQgYnl0ZXMuIChydW4gbW9yZSB0aW1l
cykNCmRyYWdvbjIgPSBtYWxsb2MobnVtYmVyX29mX2RyYWdvbnMgKiBzaXplb2YoKmRyYWdvbjIpKTsN
ClRoaXMgYnVnIHVua25vd24gcmVhc29uLCBmcmVlKCkgY2FuYHQgZnJlZSBtZW1vcnkuDQptZW1vcnkg
bGVhayBpbmNyZWFzZS4gMTY4LDUwNCw4NDAgLi4uDQoxNjggPSBzaXplb2YoKmRyYWdvbjIpLiAxNjgq
MyA9IDUwNC4gMTY4KjU9ODQwLg0KbnVtYmVyX29mX2RyYWdvbnMgPSAzIG9yIG51bWJlcl9vZl9kcmFn
b25zID0gNS4NCg0KMi5lcnJvciByZXBvcnQ6DQoNCjIuMSBSZWFkaW5nIG92ZXJmbG93cyBtZW1vcnkg
KHNvbWV0aW1lcyBvY2N1cikNCmVuZ2luZVx1dGlscy5jIDIwMSBsaW5lLg0KcG9zID0gdmFfYXJnKGFw
LCBpbnQpOw0KZW5naW5lXHV0aWxzLmMgMzkzIGxpbmUuaW4gZnVuY3Rpb24gcGxheV9hdHRhY2tfZGVm
ZW5kX24oKS4NCnpwb3MgPSB2YV9hcmcoYXAsIGludCk7DQplbmdpbmVcdXRpbHMuYyA0ODAgbGluZS4g
aW4gZnVuY3Rpb24gcGxheV9hdHRhY2tfZGVmZW5kMl9uKCkuDQp6cG9zID0gdmFfYXJnKGFwLCBpbnQp
Ow0KDQoyLjIgUmVhZGluZyB1bmluaXRpYWxpemVkIG1lbW9yeSAoc29tZXRpbWVzIG9jY3VyKQ0KZW5n
aW5lXG9wdGljcy5jIDE4MTEgbGluZS4NCmludCB0bXBfcG9pbnQgPSBoZXllW3Bvc10uYXR0YWNrX3Bv
aW50W3JdOw0KZW5naW5lXG9wdGljcy5jIDE4MjAgbGluZS4NCmludCB0bXBfcG9pbnQgPSBoZXllW3Bv
c10uZGVmZW5zZV9wb2ludFtyXTsNCg0KMi4zIEFzc2lnbmluZyBwb2ludGVyIG91dCBvZiByYW5nZSAo
c29tZXRpbWVzIG9jY3VyKQ0KdXRpbHNcZ2dfdXRpbHMuYyAzNzkgbGluZQ0KY2hhciAqZW5kID0gKGNo
YXIgKikgYmFzZSArIHdpZHRoICogKG5lbCAtIDEpOw0KDQoyLjQgRXhwcmVzc2lvbiB1c2VzIHVucmVs
YXRlZCBwb2ludGVycyAoc29tZXRpbWVzIG9jY3VyKQ0KdXRpbHNcZ2dfdXRpbHMuYyAzODQgbGluZQ0K
Zm9yIChhID0gYmFzZSwgYiA9IGEgKyBnYXAgKiB3aWR0aDsgYiA8PSBlbmQ7IGEgKz0gd2lkdGgsIGIg
Kz0gd2lkdGgpDQoNClJlcGFpciAyLjQ6DQpUaGUgc29sdXRpb24gZm9yIHRoaXMgcHJvYmxlbSBpcyB0
byBhdm9pZCB1c2luZyB0aGlzIGNvbnN0cnVjdCwgDQpzaW5jZSBpdCBpcyB1bmRlZmluZWQgaW4gQU5T
SSBDLiANCkhvd2V2ZXIsIHRoaXMgY29uc3RydWN0IGlzIHN1cHBvcnRlZCBvbiBtYW55IHN5c3RlbXMg
YW5kIGZyZXF1ZW50bHkgdXNlZC4gDQoNCkJvdW5kc0NoZWNrZXINCg0KY2hpbmEuDQoNCg0KDQoNCg0K
DQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg==

- ------------10578263958217SINAEMAIL-----
------- End of forwarded message -------





reply via email to

[Prev in Thread] Current Thread [Next in Thread]