--- a/FileApplicationNoteBook.st Wed Mar 27 13:45:27 2019 +0100
+++ b/FileApplicationNoteBook.st Wed Mar 27 16:02:07 2019 +0100
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
"
COPYRIGHT (c) 2002 by eXept Software AG
All Rights Reserved
@@ -7280,29 +7282,41 @@
!
updateXMLTree
- |inStream dom|
-
+ |lineInStream dom|
+[
self withWaitCursorDo:[
- XML::XMLSignal handle:[:ex |
+ [
+ |rawStream inStream encoding|
+
+ rawStream := self fileName readStream.
+ rawStream binary.
+ encoding := CharacterEncoder detectAndSkipBOMInStream:rawStream.
+ rawStream text.
+ encoding notNil ifTrue:[
+ inStream := EncodedStream stream:rawStream encoding:encoding.
+ ] ifFalse:[
+ inStream := rawStream
+ ].
+ lineInStream := LineNumberReadStream on:inStream.
+ [
+ dom := XML::XMLParser
+ processDocumentStream:lineInStream
+ beforeScanDo:[:parser | parser validate:false. ].
+ xmlTreeApp model:dom.
+ ] ensure:[
+ rawStream close
+ ]
+ ] on: XML::XMLSignal do:[:ex |
Dialog
information:
(resources
stringWithCRs:'Error reported by XML-Parser in line %1:\\%2\\Showing as regular text.'
- with:inStream lineNumber
+ with:lineInStream lineNumber
with:ex description).
Error raise.
- ] do:[
- inStream := LineNumberReadStream on:(self fileName readStream).
- [
- dom := XML::XMLParser
- processDocumentStream:inStream
- beforeScanDo:[:parser | parser validate:false. ].
- xmlTreeApp model:dom.
- ] ensure:[
- inStream close
- ]
].
].
+] on: Error do:[:ex | self halt].
"Created: / 17-02-2011 / 13:39:07 / cg"
"Modified: / 17-02-2011 / 17:39:15 / cg"