diff --git a/collects/framework/private/canvas.rkt b/collects/framework/private/canvas.rkt index 42a07879..666dd44c 100644 --- a/collects/framework/private/canvas.rkt +++ b/collects/framework/private/canvas.rkt @@ -152,11 +152,12 @@ (set-max-height snip-height)))))))))) (define/public (recalc-snips) (let ([editor (get-editor)]) - (unless (is-a? editor text:wide-snip<%>) - (error 'recalc-snips "expected a text:wide-snip<%> editor, instead ~e" editor)) - (when (eq? (send editor get-canvas) this) - (for-each (update-snip-size #t) (send editor get-wide-snips)) - (for-each (update-snip-size #f) (send editor get-tall-snips))))) + (when editor + (unless (is-a? editor text:wide-snip<%>) + (error 'recalc-snips "expected a text:wide-snip<%> editor, instead ~e" editor)) + (when (eq? (send editor get-canvas) this) + (for-each (update-snip-size #t) (send editor get-wide-snips)) + (for-each (update-snip-size #f) (send editor get-tall-snips)))))) (define/public (add-wide-snip snip) (let ([editor (get-editor)]) (unless (is-a? editor text:wide-snip<%>)