View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000782 | Far Manager | Panel | public | 2009-03-12 02:51 | 2009-03-13 18:25 |
Reporter | alexeypa | Assigned To | alexy | ||
Priority | normal | Severity | crash | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Fixed in Version | 2.0 | ||||
Summary | 0000782: FileList::ProcessEnter падает после ChangeDir. | ||||
Description | Repro: 1. Запустить Far 2.0. x64 под AppVerifier. 2. cd \\network\share 3. Перейти в родительский каталог. Проблема в том, что после вызова ChangeDir в FileList::ProcessEnter, this может быть уже удалён. Прикрепленный патч это дело исправляет. 0001--this-cannot-be-used-after-ChangeDir-was-called.-Fi.patch | ||||
Tags | No tags attached. | ||||
Build | 823 | ||||
2009-03-12 02:51
|
0001--this-cannot-be-used-after-ChangeDir-was-called.-Fi.patch (1,027 bytes)
From f6c6bc7248793371650f2202b759ca109f4890c7 Mon Sep 17 00:00:00 2001 From: Alexey Pakhunov <alexeypa@gmail.com> Date: Wed, 11 Mar 2009 13:06:59 -0700 Subject: [PATCH 1/2] "this" cannot be used after ChangeDir was called. FileList can be deleted by that time. --- unicode_far/filelist.cpp | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/unicode_far/filelist.cpp b/unicode_far/filelist.cpp index f80094a..5d88a7c 100644 --- a/unicode_far/filelist.cpp +++ b/unicode_far/filelist.cpp @@ -1982,8 +1982,10 @@ void FileList::ProcessEnter(int EnableExec,int SeparateWindow) } else res=ChangeDir(CurPtr->strShortName); - CtrlObject->Cp()->ActivePanel->Show(); - if(CheckFullScreen!=IsFullScreen()) + + Panel* ActivePanel = CtrlObject->Cp()->ActivePanel; + ActivePanel->Show(); + if(CheckFullScreen!=ActivePanel->ViewSettings.FullScreen) { CtrlObject->Cp()->GetAnotherPanel(this)->Show(); } -- 1.6.2.1217.gd7bc3 |
|
А там последняя строка: CtrlObject->Cp()->GetAnotherPanel(this)->Show(); там уже this валиден? Падать оно не будет там но тоже не хорошо. |
|
И там ещё в файле есть пару мест с ChangeDir которые наверно нужно также поправить. |
|
> там уже this валиден? Падать оно не будет там но тоже не хорошо. > И там ещё в файле есть пару мест с ChangeDir которые наверно нужно также поправить. Точно. Завтра поправлю. |
|
Нестрашно, я сам доделаю. Всеровно и в 1.75 надо править это. |
|
823 |
Date Modified | Username | Field | Change |
---|---|---|---|
2009-03-12 02:51 | alexeypa | New Issue | |
2009-03-12 02:51 | alexeypa | File Added: 0001--this-cannot-be-used-after-ChangeDir-was-called.-Fi.patch | |
2009-03-12 05:53 | alexy | Note Added: 0002752 | |
2009-03-12 05:58 | alexy | Note Added: 0002753 | |
2009-03-12 06:35 | alexeypa | Note Added: 0002754 | |
2009-03-12 06:43 | alexy | Status | new => assigned |
2009-03-12 06:43 | alexy | Assigned To | => alexy |
2009-03-12 15:59 | DrKnS | Relationship added | duplicate of 0000734 |
2009-03-12 18:33 | alexy | Note Added: 0002766 | |
2009-03-12 18:53 | alexy | Relationship added | has duplicate 0000743 |
2009-03-12 19:16 | alexy | Relationship deleted | 0000734 |
2009-03-12 19:17 | alexy | Relationship added | has duplicate 0000734 |
2009-03-13 14:23 | alexy | Note Added: 0002780 | |
2009-03-13 14:23 | alexy | Status | assigned => feedback |
2009-03-13 16:24 | alexeypa | Status | feedback => resolved |
2009-03-13 16:24 | alexeypa | Resolution | open => fixed |
2009-03-13 18:25 | alexy | Build | => 823 |
2009-03-13 18:25 | alexy | Status | resolved => closed |
2009-03-13 18:25 | alexy | Fixed in Version | => 2.0 |