Attached are two small patches to fix:
1. TFPWriterXPM fails if there are more than 60 or so colours in the palette
2. Warnings when using ReadXMLFile
Colin
diff -uNr trunk/fpcsrc/fcl/xml/xmlread.pp trunk.w/fpcsrc/fcl/xml/xmlread.pp
--- trunk/fpcsrc/fcl/xml/xmlread.pp 2005-10-19 23:04:44.000000000 +0100
+++ trunk.w/fpcsrc/fcl/xml/xmlread.pp 2006-01-08 17:49:48.000000000 +0000
@@ -31,10 +31,10 @@
EXMLReadError = class(Exception);
-procedure ReadXMLFile(var ADoc: TXMLDocument; const AFilename: String); overload;
-procedure ReadXMLFile(var ADoc: TXMLDocument; var f: File); overload;
-procedure ReadXMLFile(var ADoc: TXMLDocument; var f: TStream); overload;
-procedure ReadXMLFile(var ADoc: TXMLDocument; var f: TStream; const AFilename: String); overload;
+procedure ReadXMLFile(out ADoc: TXMLDocument; const AFilename: String); overload;
+procedure ReadXMLFile(out ADoc: TXMLDocument; var f: File); overload;
+procedure ReadXMLFile(out ADoc: TXMLDocument; var f: TStream); overload;
+procedure ReadXMLFile(out ADoc: TXMLDocument; var f: TStream; const AFilename: String); overload;
procedure ReadXMLFragment(AParentNode: TDOMNode; const AFilename: String); overload;
procedure ReadXMLFragment(AParentNode: TDOMNode; var f: File); overload;
@@ -1346,7 +1346,7 @@
-procedure ReadXMLFile(var ADoc: TXMLDocument; var f: File);
+procedure ReadXMLFile(out ADoc: TXMLDocument; var f: File);
var
reader: TXMLReader;
buf: PChar;
@@ -1373,7 +1373,7 @@
end;
end;
-procedure ReadXMLFile(var ADoc: TXMLDocument; var f: TStream; const AFilename: String);
+procedure ReadXMLFile(out ADoc: TXMLDocument; var f: TStream; const AFilename: String);
var
reader: TXMLReader;
buf: PChar;
@@ -1397,12 +1397,12 @@
end;
end;
-procedure ReadXMLFile(var ADoc: TXMLDocument; var f: TStream);
+procedure ReadXMLFile(out ADoc: TXMLDocument; var f: TStream);
begin
ReadXMLFile(ADoc, f, '<Stream>');
end;
-procedure ReadXMLFile(var ADoc: TXMLDocument; const AFilename: String);
+procedure ReadXMLFile(out ADoc: TXMLDocument; const AFilename: String);
var
FileStream: TFileStream;
MemStream: TMemoryStream;
diff -uNr trunk/fpcsrc/fcl/image/fpwritexpm.pp trunk.w/fpcsrc/fcl/image/fpwritexpm.pp
--- trunk/fpcsrc/fcl/image/fpwritexpm.pp 2005-06-11 09:58:32.000000000 +0100
+++ trunk.w/fpcsrc/fcl/image/fpwritexpm.pp 2006-01-08 18:32:15.000000000 +0000
@@ -85,12 +85,13 @@
dec (charplace);
while (r <= e) and (c >= 0) do
begin
- if Charplace = 1 then
+ if Charplace > 0 then
MakeCodes (head+PalChars[r],charplace)
- else
+ else begin
p.Add (head+PalChars[r]);
+ dec(c);
+ end;
inc (r);
- dec(c);
end;
end;
begin
_______________________________________________
fpc-devel maillist - [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel