Коллеги,
> -- Views Documentation писал(а):
> PROCEDURE Old (ask: BOOLEAN; VAR loc: Files.Locator; VAR name: Files.Name;								VAR conv: Converters.Converter): Viewconv determines the converter which is used for reading the document. conv = NIL means that no conversion is necessary, i.e., the file format already has the standard BlackBox format.
Т.е. если передать conv = NIL, то конверсия не должна производиться. И если читать, напр, .png файл этой командой, указав conv = NIL, то должно вернуться res = NIL, т.к. невозможно извлечь Views.View из Png-файла.

Однако де-факто реализация (в StdDialog.OldView) вызывает Converters.Import, передавая ему conv Без изменений. Но
> -- документация PROCEDURE Converters.Import (loc: Files.Locator; name: Files.Name; VAR conv: Converter; OUT s: Stores.Store) писал(а):
> If conv = NIL, the first suitable converter in list is used and returned in the VAR parameter.

В итоге, де-факто Views.Old, если передан conv = NIL, перебирает все установленные конвертеры, хватает первый попавшийся и читает с его помощью файл. И возвращается некая кирдымырда, поскольку Png не конвертируется в Зрителя.

Как вылечить:
Кажется, что-то напутано в StdDialog.OldView, там зачем-то введена локальная переменная c: Converters.Converter, какие-то с ней непонятные манипуляции, результат их не используется. Ее нужно удалить, вместо нее в тексте везде использовать формальный параметр conv:
## Код:
```
c := conv;  (* удалить *)
      IF c = NIL THEN c := Converters.list END;   (* use document converter *)
         (* IF conv = NIL THEN conv := Converters.list END; *)
      w := Windows.GetBySpec(loc, name, c (* -> conv *), {});
      IF w # NIL THEN s := w.doc.ThisView() END;
      IF s = NIL THEN
         Converters.Import(loc, name, conv, s);
```


Предлагаю вылечить.

Кроме того, уточнить документацию Views.Old: там ничего не сказано про случай, когда импортировать Зритель невозможно, кроме того, ошибочно указано постусловие
result = NIL => loc.res # 0
Надо указать, что если заданным конвертером не получается извлечь Зрителя из файла - то возвращается NIL.

Де-факто даже сейчас NIL вполне может вернуться, если Converters.Import не найдет подходящего конвертера (это маловероятно, т.к. есть HostTextConv.ImportText, (и .ImportHex, StdETHConv.ImportETHDoc), которые отмечены флагом Converters.importAll, т.е. он-то как раз и "ловит" все, для чего не нашлось спецконвертера, и превращает любой файл в текстовый кирдымырды; полезность этого весьма сомнительна, кмк, и я бы снял с него флажок importAll)