View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000587 | Far Manager | Plugins API | public | 2008-08-08 06:20 | 2008-08-12 21:03 |
Reporter | theultramage | Assigned To | DrKnS | ||
Priority | normal | Severity | major | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Fixed in Version | 1.80 alpha 1 | ||||
Summary | 0000587: entering '..' inside an archive exits archive instead of going up 1 level | ||||
Description | When browsing an internal directory inside an archive and pressing 'enter' on the '..' pseudo-directory, FAR will exit the archive. The cause is apparently an ansi/unicode code inconsistency. | ||||
Additional Information | Since MultiARC is still ansi, the code to execute will be PluginA::SetDirectory(), which modifies the plugin's OPIA (OpenPluginInfoA) only. Now when we want to change the directory (in FileList::ProcessEnter()), first the code retrieves the plugin's info: CtrlObject->Plugins.GetOpenPluginInfo(hPlugin,&Info); -> ph->pPlugin->GetOpenPluginInfo (ph->hPlugin, Info); -> EXECUTE_FUNCTION(pGetOpenPluginInfo(hPlugin, &InfoA), es); ConvertOpenPluginInfo(InfoA,pInfo); ConvertOpenPluginInfo(), I assume, is supposed to do an ansi->unicode conversion on all the relevant fields. But at the beginning... if(!memcmp(&OPIA,&Src,sizeof(oldfar::OpenPluginInfo))) memcpy(Dest,&OPI,sizeof(OpenPluginInfo)); So what gets returned is the un-updated OPI structure, whose CurDir is always "". I am a novice in FAR coding but to me it looks like this OPI/OPIA 'cache' is not maintained correctly. | ||||
Tags | No tags attached. | ||||
Build | 548 | ||||
Date Modified | Username | Field | Change |
---|---|---|---|
2008-08-08 06:20 | theultramage | New Issue | |
2008-08-12 06:43 | DrKnS | Status | new => assigned |
2008-08-12 06:43 | DrKnS | Assigned To | => DrKnS |
2008-08-12 06:45 | DrKnS | Note Added: 0001734 | |
2008-08-12 06:45 | DrKnS | Status | assigned => feedback |
2008-08-12 13:47 | theultramage | Note Added: 0001735 | |
2008-08-12 21:03 | DrKnS | Build | => 548 |
2008-08-12 21:03 | DrKnS | Status | feedback => closed |
2008-08-12 21:03 | DrKnS | Resolution | open => fixed |
2008-08-12 21:03 | DrKnS | Fixed in Version | => 1.80 alpha 1 |