Edit report at http://bugs.php.net/bug.php?id=48983&edit=1

 ID:               48983
 Updated by:       [email protected]
 Reported by:      php at bouchery dot fr
-Summary:          DomDocument : saveHTMLFile wrong charset and crash
+Summary:          DomDocument : saveHTMLFile wrong charset
-Status:           Open
+Status:           Closed
 Type:             Bug
 Package:          DOM XML related
 Operating System: Windows XP
 PHP Version:      5.3.0
-Assigned To:      
+Assigned To:      rrichards

 New Comment:

This bug has been fixed in SVN.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
 
Thank you for the report, and for helping us make PHP better.

crash was from older libxml2 version


Previous Comments:
------------------------------------------------------------------------
[2010-04-02 22:08:20] [email protected]

Automatic comment from SVN on behalf of rrichards
Revision: http://svn.php.net/viewvc/?view=revision&revision=297374
Log: fix bug #48983 (DomDocument : saveHTMLFile wrong charset)

------------------------------------------------------------------------
[2009-07-20 16:03:31] php at bouchery dot fr

Entry point   php+2fa2 

Create time   20/07/2009 18:00:24 

Time spent in user mode   0 Days 0:0:0.31 

Time spent in kernel mode   0 Days 0:0:0.78 



Function     Arg 1     Arg 2     Arg 3   Source 

php5ts!DllMain+c2     00000000     00000000     00000000    



PHP5TS!DLLMAIN+C2WARNING - DebugDiag was not able to locate debug 

symbols for php5ts.dll, so the information below may be incomplete.



In 

php__PID__1304__Date__07_20_2009__Time_06_00_34PM__618__Second_Chance_

Exception_C0000005.dmp the assembly instruction at php5ts!DllMain+c2 

in C:\bin\php-5.3.0\php5ts.dll from The PHP Group has caused an access 

violation exception (0xC0000005) when trying to read from memory 

location 0x64756f70 on thread 0



Module Information 

Image Name: C:\bin\php-5.3.0\php5ts.dll   Symbol Type:  Export 

Base address: 0x10000000   Time Stamp:  Mon Jun 29 22:53:15 2009  

Checksum: 0x00579fbc   Comments:   

COM DLL: False   Company Name:  The PHP Group 

ISAPIExtension: False   File Description:  PHP Script Interpreter 

ISAPIFilter: False   File Version:  5.3.0 

Managed DLL: False   Internal Name:  PHP Script Interpreter 

VB DLL: False   Legal Copyright:  Copyright © 1997-2009 The PHP Group 

Loaded Image Name:  php5ts.dll   Legal Trademarks:  PHP 

Mapped Image Name:     Original filename:  php5ts.dll 

Module name:  php5ts   Private Build:   

Single Threaded:  False   Product Name:  PHP 

Module Size:  5,61 MBytes   Product Version:  5.3.0 

Symbol File Name:  php5ts.dll   Special Build:  &)

------------------------------------------------------------------------
[2009-07-20 14:53:16] [email protected]

Thank you for this bug report. To properly diagnose the problem, we
need a backtrace to see what is happening behind the scenes. To
find out how to generate a backtrace, please read
http://bugs.php.net/bugs-generating-backtrace.php for *NIX and
http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32

Once you have generated a backtrace, please submit it to this bug
report and change the status back to "Open". Thank you for helping
us make PHP better.



------------------------------------------------------------------------
[2009-07-20 09:44:27] php at bouchery dot fr

Description:
------------
When using DomDocument to generate HTML. If I'm trying to add the
content-type, and generate a file with "saveHTMLfile", PHP crash and
charset is not correctly defined (Always UTF-8).

With "saveHTML", it works fine.

Reproduce code:
---------------
<?php



$doc = new DOMDocument('1.0','iso-8859-1');

$doc->formatOutput = true;



$root = $doc->createElement('html');

$root = $doc->appendChild($root);



$head = $doc->createElement('head');

$head = $root->appendChild($head);



$title = $doc->createElement('title');

$title = $head->appendChild($title);



$text = $doc->createTextNode('This is the title');

$text = $title->appendChild($text);



$meta = $doc->createElement('meta'); 

$meta = $head->appendChild($meta);

 

$meta->setAttribute('http-equiv', 'Content-Type'); 

$meta->setAttribute('content', 'text/html; charset=ISO-8859-1'); 



echo $doc->saveHTML();

$doc->saveHTMLFile('result.html'); 

?>

Expected result:
----------------
No crash, output is :

----

<html><head>

<title>This is the title</title>

<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">

</head></html>

----

And "result.html" must contains : 

----

<html><head>

<title>This is the title</title>

<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">

</head></html>

----



Actual result:
--------------
PHP process crash

Output : 

----

<html><head>

<title>This is the title</title>

<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">

</head></html>

----

"result.html"

<html><head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>This is the title</title>

</head></html>


------------------------------------------------------------------------



-- 
Edit this bug report at http://bugs.php.net/bug.php?id=48983&edit=1

Reply via email to