ugrás a tartalomhoz

Glibc hiba PHP program futtatásakor

Anonymous · 2006. Már. 19. (V), 23.21
Van egy programom, aminek az volna a feladata, hogy egy nagyon nagy (>>20G) szöveges fájlt soronként beolvasson, az adott sorban dekódolja a HTML szimbólumokat (html_entity_decode), majd a sort kiírja egy másik fájlba. Így szép sorban át kellene szűrnie az egész fájlt. Íme a progi, ez egy shellből futtatható kód akar lenni:
#!/usr/bin/php
<?php
set_time_limit(0);
ini_set("memory_limit","16M");
error_reporting("E_ALL");
if (!isset($argv[1]) or empty($argv[1]))
	{
	fwrite(STDOUT,"Hiányzó argumentum!\nHasználat: process infile.txt\n");
	die();
	}
$instd=fopen($argv[1],"r");
$fp=fopen("szurt.dmp","w");
$na=80;
$nb=0;
$nc=1024;
$nd=0;
while (!feof($instd))
	{
	$nd++;
	fwrite($fp,html_entity_decode(fgets($instd,6000)));
	if ($nd>=$nc)
		{
		$nb++;
		if ($nb>=$na)
			{
			fwrite(STDOUT,"\n");
			$nb=0;
			}
		fwrite(STDOUT,".");
		$nd=0;
		}
	}
?>
A baj az, hogy futás közben (mindig kb. ugyanott) a futás ezzel a hibaüzenettel áll meg:

*** glibc detected *** corrupted double-linked list: 0x08182ca0 *** Félbeszakítva

Nem értem, mi lehet a baj. Tudnátok segíteni? Köszi!
 
1

Megoldva

Anonymous · 2006. Már. 20. (H), 04.07
Időközben rájöttem, hogy a hiba csak PHP5.0.x alatt jön elő. 4.3 alatt a szkript gond nélkül fut. Érdekes.