View Issue Details

IDProjectCategoryView StatusLast Update
0003313Far ManagerPlugins API.Panelpublic2017-12-01 19:53
ReporterpepakAssigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
Product Version3.0 
Target VersionFixed in Version 
Summary0003313: FCTL_SETPANELDIRECTORY not working for certain types of paths
DescriptionPanelControl(PANEL_ACTIVE, FCTL_SETPANELDIRECTORY, ...) will fail if the panel is a standard FAR panel (not a plugin panel), all elements of FarPanelDirectory except Name are empty and Name contains valid paths starting with double backslash, e.g. \\.\pipe. The same path will get processed correctly with command-line cd \\.\pipe, but as far as I can tell, it is impossible to invoke from a plugin. It would be nice if FCTL_SETPANELDIRECTORY could do the same thing as CD, or if that is not possible, that an interface to CD be opened for plugin use.
TagsNo tags attached.
Build

Activities

pepak

2016-11-13 21:40

reporter   bugnote:0015011

Apparently, this isn't a bug in FAR per se. The observed behavior is caused by the plugin which doesn't respond to Info.OpenFrom = OPEN_SHORTCUT, which is used in this situation. However, I myself never realized this necessity and there are other plugins with the same issue - e.g. NetBox. For this reason, a special note should be made in the Encyclopedia for FCTL_SETPANELDIRECTORY.

JohnDoe

2017-12-01 19:16

updater   bugnote:0015881

pepak
I understand issue in summary, but not your above comment.

In summary you write about standard file panel (not plugin).
But your further comment seems unrelated.

pepak

2017-12-01 19:44

reporter   bugnote:0015883

That comment was apparently a mistake, intended for another bugreport.

JohnDoe

2017-12-01 19:53

updater   bugnote:0015885

pepak wrote

..valid paths starting with double backslash..
As I can see \\ is ok in such cases:
lua:=panel.SetPanelDirectory(-1,nil,[[\\.\C:\]])
lua:=panel.SetPanelDirectory(-1,nil,[[\\?\C:\]])
lua:=panel.SetPanelDirectory(-1,nil,[[\\COMPUTER-B02E14\C$]])


But not ok in this:
lua:=panel.SetPanelDirectory(-1,nil,[[\\.\pipe]])

Issue History

Date Modified Username Field Change
2016-09-27 17:40 pepak New Issue
2016-11-13 21:40 pepak Note Added: 0015011
2017-12-01 19:16 JohnDoe Note Added: 0015881
2017-12-01 19:44 pepak Note Added: 0015883
2017-12-01 19:53 JohnDoe Note Added: 0015885