diff --git a/collects/mred/private/wxme/editor.ss b/collects/mred/private/wxme/editor.ss index 5488a75c..086ba444 100644 --- a/collects/mred/private/wxme/editor.ss +++ b/collects/mred/private/wxme/editor.ss @@ -124,7 +124,7 @@ (define undomode? #f) (define redomode? #f) (define interceptmode? #f) - (define loadoverwritesstyles? #f) + (define loadoverwritesstyles? #t) (field [s-custom-cursor-overrides? #f] [s-need-on-display-size? #f]) diff --git a/collects/mred/private/wxme/stream.ss b/collects/mred/private/wxme/stream.ss index 10aa45c1..d5ed4bb4 100644 --- a/collects/mred/private/wxme/stream.ss +++ b/collects/mred/private/wxme/stream.ss @@ -569,10 +569,10 @@ #t (cond [(and (pair? boundaries) - ((tell) . > . (car boundaries))) + (items . > . (car boundaries))) (set! is-bad? #t) (error 'editor-stream-in% - "overread (caused by file corruption?; ~a vs ~a)" (tell) (car boundaries))] + "overread (caused by file corruption?; ~a vs ~a)" items (car boundaries))] [(send f bad?) (set! is-bad? #t) (error 'editor-stream-in% "stream error")] @@ -587,6 +587,8 @@ (if (read-version . < . 8) (send f tell) (let ([pos (send f tell)]) + (when (not (equal? (hash-ref pos-map items pos) pos)) + (error "again")) (hash-set! pos-map items pos) items))) diff --git a/collects/mred/private/wxme/text.ss b/collects/mred/private/wxme/text.ss index aa136381..702e1e2f 100644 --- a/collects/mred/private/wxme/text.ss +++ b/collects/mred/private/wxme/text.ss @@ -2479,7 +2479,7 @@ (def/override (insert-port [input-port? f] [(symbol-in guess same copy standard text text-force-cr) [format 'guess]] - [any? [replace-styles? #f]]) + [any? [replace-styles? #t]]) (if (or write-locked? s-user-locked?) 'guess ;; FIXME: docs say that this is more specific (do-insert-file (method-name 'text% 'insert-file) f format replace-styles?)))