View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0003910 | Plugins | Network | public | 2021-11-18 09:09 | 2021-12-02 01:41 |
Reporter | domashniyngs | Assigned To | ctapmex | ||
Priority | high | Severity | minor | Reproducibility | have not tried |
Status | feedback | Resolution | open | ||
Platform | x64 | OS | Windows | ||
Product Version | 3.0 | ||||
Summary | 0003910: При переходе по шарам плагин кэширует первый сервер и дальше подставляет его | ||||
Description | При переходе по шарам плагин кэширует первый сервер и дальше подставляет его. Пример - net:\\asq7 далее заходим в шару etc далее говорим net:\\asq3 (другая платформа) вылетает ошибка, при этом в шару в итоге заходит нормально Еще есть куча алертов в логах АД о попытке подключения не под пользователем а под сервером | ||||
Steps To Reproduce | При переходе по шарам плагин кэширует первый сервер и дальше подставляет его. Пример - net:\\asq7 далее заходим в шару etc далее говорим net:\\asq3 (другая платформа) вылетает ошибка, при этом в шару в итоге заходит нормально Еще есть куча алертов в логах АД о попытке подключения не под пользователем а под сервером | ||||
Tags | No tags attached. | ||||
|
|
|
Версия 3.0.5ххх - ошибки, (версия 3.0.3ххх все работает корректно). |
|
а вот тут скорее far виноват. перед обработкой команды в консоли в CommandLine::ExecString он выставляет текущую директорию FarChDir(m_Curdir). m_Curdir содержит текущую директорию относительно панели, а при работе с FarChDir обрабатывается текущая рабочая директория far, которая указывает на последнюю с которой он работал. И FarChDir пытается сменить путь на мешанину текущей системной директории и плагинновой. и получаем проблему. |
|
DrKnS, тут ошибка в Far. сам не пойму где в Far править . проблема, если смотреть в отладчике , воспроизводится легко. а первоначальное описание - это когда уже видно реакцию системы/плагинов и т.п. 1. зашли на на шару \\comp1\a1 . сработал FarChDir . текущая директория \\comp1\a1 2. вызвали net:\\comp2 . до передачи управления плагину CommandLine::ExecString вызывает FarChDir, передавая туда m_CurDir=\\comp1 . Это значение переменная получила от плагина в рамках GetOpenPanelInfo. Так вот, в FarChDir вызывается Directory = ConvertNameToFull(NewDir); , которая начинает творить ерунду. Она берет текущую директорию \\comp1\a1 и добавляет к ней относительны путь из панели \\comp1, что приводит к попытке выставления текущей директории в \\comp1\a1\\comp1 и генерирует ошибку (но она не отображается). т.е. не смотря на то, что плагин не выставлял OPIF_REALNAMES, far пытается работать с CurDir из панели как с реальным . |
|
кажется упустил шаг. после пункта 1 нужно перейти обратно в \\comp1 . тогда повествование сложится |
|
https://github.com/FarGroup/FarManager/blob/28934c6481bbb4e398dbcf233dbb7b21fedf3cc0/plugins/network/NetClass.cpp#L776 https://github.com/FarGroup/FarManager/blob/28934c6481bbb4e398dbcf233dbb7b21fedf3cc0/far/filelist.cpp#L7704-L7709 |
|
Можно попробовать обрабатывать в плагине FE_COMMAND, и если там "prefix:something", то передавать "something" в SetOpenFromCommandLine или что там внутри плагина отвечает за переходы. Это, наверное, будет еще и немного эффективнее, чем сейчас. |
|
мда, что-то я ступил, не смог найти строку. но ссылка на костыль в фаре с указанием ссылки на мантис - то что нужно. пока буду думать |
|
с предложенным подходом действительно работает, как еще один плюс не пересоздаем экземпляр панели . оформлю PR |
|
5925 |
Date Modified | Username | Field | Change |
---|---|---|---|
2021-11-18 09:09 | domashniyngs | New Issue | |
2021-11-18 09:09 | domashniyngs | File Added: Снимок.JPG | |
2021-11-18 09:13 | domashniyngs | Note Added: 0017202 | |
2021-11-20 10:53 | ctapmex | Note Added: 0017207 | |
2021-11-30 19:29 | ctapmex | Note Added: 0017225 | |
2021-11-30 19:51 | ctapmex | Note Added: 0017228 | |
2021-11-30 19:51 | DrKnS | Note Added: 0017229 | |
2021-11-30 22:00 | DrKnS | Note Added: 0017232 | |
2021-12-01 05:17 | ctapmex | Note Added: 0017233 | |
2021-12-01 16:56 | ctapmex | Note Added: 0017244 | |
2021-12-02 01:41 | DrKnS | Assigned To | => ctapmex |
2021-12-02 01:41 | DrKnS | Status | new => feedback |
2021-12-02 01:41 | DrKnS | Note Added: 0017248 |