View Issue Details

IDProjectCategoryView StatusLast Update
0002710Far ManagerCommand Line/Executepublic2014-06-19 07:02
ReporterSEt Assigned ToDrKnS  
PrioritynormalSeverityblockReproducibilityalways
Status closedResolutionfixed 
Product Version3.0 
Fixed in Version3.0 
Summary0002710: Бред какой-то
DescriptionОбновился – сломался запуск exe из фара. Полез разбираться: а там
TagsNo tags attached.
Build3954

Activities

SEt

2014-06-18 19:32

reporter  

exec.diff (482 bytes)   
Index: execute.cpp
===================================================================
--- execute.cpp	(revision 11972)
+++ execute.cpp	(working copy)
@@ -547,7 +547,7 @@
 			strValue += strAction;
 			RetPtr = strAction.data();
 		}
-
+		else
 		// ... � ����� ��� ��������, ���� "open" ����
 		FOR(const auto& i, api::reg::enum_key(hKey))
 		{
@@ -562,6 +562,7 @@
 			{
 				strValue += strAction;
 				RetPtr = strAction.data();
+				break;
 			}
 		}
 	}
exec.diff (482 bytes)   

SEt

2014-06-18 19:50

reporter   bugnote:0012521

Ну вот, теперь ещё мантису плохо.

В общем, в аттаче исправление.

shmuel

2014-06-18 20:10

developer   bugnote:0012522

А что надо сделать, чтобы воспроизвести неисправность?
У меня Фар 3.0.3952, exe-файлы запускаются.

2useven10

2014-06-18 21:17

developer   bugnote:0012523

Как проявляется хотелось бы услышать.
Судя по коду, эти правки восстановят логику, которая была до 'рефакторинга' 23 марта.

SEt

2014-06-18 22:06

reporter   bugnote:0012524

Проявляется у меня в полном прекращении запуска exe'шников при наличии (неопубликованного) плагина, включающего backup-привилегии на все операции. Вместо запуска или красное окошко фара, что не запускается, или окно винды для ввода runas логина/пароля.

Почему конкретно это происходит я не стал разбираться, так как код явно был превращён в бред в результате "рефакторинга": в начале после удачного получения операции "open" в путь дописывается нечто, порождающее неадекватный адрес, затем следующий if проверяет, похоже, освобождённую и испорченную память. Очень странно, что оно вообще где-то работает.

Issue History

Date Modified Username Field Change
2014-06-18 19:31 SEt New Issue
2014-06-18 19:32 SEt File Added: exec.diff
2014-06-18 19:51 SEt Note Added: 0012521
2014-06-18 20:10 shmuel Note Added: 0012522
2014-06-18 21:17 2useven10 Note Added: 0012523
2014-06-18 22:06 SEt Note Added: 0012524
2014-06-19 07:02 DrKnS Build => 3954
2014-06-19 07:02 DrKnS Status new => closed
2014-06-19 07:02 DrKnS Assigned To => DrKnS
2014-06-19 07:02 DrKnS Resolution open => fixed
2014-06-19 07:02 DrKnS Fixed in Version => 3.0