View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001865 | Far Manager | Plugins API | public | 2011-08-26 11:06 | 2011-08-28 16:05 |
Reporter | Maximus | Assigned To | DrKnS | ||
Priority | normal | Severity | minor | Reproducibility | have not tried |
Status | closed | Resolution | fixed | ||
Product Version | 3.0 | ||||
Fixed in Version | 3.0 | ||||
Summary | 0001865: Инициализация массивов цветов в dialog.cpp | ||||
Description | чтобы ни у кого крышу не срывало... а то мусор в FarColor не есть хорошо | ||||
Tags | No tags attached. | ||||
Build | 2179 | ||||
|
Dialog.cpp.diff (1,168 bytes)
Index: dialog.cpp =================================================================== --- dialog.cpp (revision 6633) +++ dialog.cpp (working copy) @@ -1520,7 +1520,7 @@ DialogItemEx *CurItem; int X,Y; unsigned I,DrawItemCount; - FarColor ItemColor[4]; + FarColor ItemColor[4]={}; // ���� �� �������� ���������, �� ���������. if (IsEnableRedraw || // �������� ���������� ? @@ -1951,7 +1951,7 @@ if (CurItem->ListPtr) { // ����� ���������� ������� �� ��������� ������ ��������� - FarColor RealColors[VMENU_COLOR_COUNT]; + FarColor RealColors[VMENU_COLOR_COUNT]={}; FarDialogItemColors ListColors={0}; ListColors.ColorsCount=VMENU_COLOR_COUNT; ListColors.Colors=RealColors; @@ -3916,7 +3916,7 @@ SetDropDownOpened(TRUE); // ��������� ���� "������" ����������. SetComboBoxPos(CurItem); // ����� ���������� ������� �� ��������� ������ ��������� - FarColor RealColors[VMENU_COLOR_COUNT]; + FarColor RealColors[VMENU_COLOR_COUNT]={}; FarDialogItemColors ListColors={0}; ListColors.ColorsCount=VMENU_COLOR_COUNT; ListColors.Colors=RealColors; |
|
А смысл? Плагин заполняет, а не читает. Какая ему разница, что там было? |
|
1. чтобы было красиво 2. если плагин "не все" заполнит - у фара крышу сорвет 3. другие структуры (например в GetPluginInfoW) приходят обнуленные, хотя "плагин их заполняет". |
|
если плагин не всё заполнит - оно при обнуленнии тупо черное будет, чем это лучше? в GetPluginInfoW приходит обнуленная потому что можно её заполнять частично, здесь нельзя. |
|
Ладно, еще аргумент - крышу срывает у враппера, который не знает как конвертить цвет в Far2 при вызове плагина. |
|
ничего не понял. почему у анси-враппера не срывает? давай с подробностями. |
|
PluginA.cpp:2202 - анси-враппер просто не обращает внимание на то, что в lc->Colors[3], например, содержится мусор. Ну, ничего, конечно, криминального в этом нет - передаст в плагин фигню какую-нть вместо 0-я в соотвествующем байте. Но некрасиво ведь? Зачем мусор передавать? |
Date Modified | Username | Field | Change |
---|---|---|---|
2011-08-26 11:06 | Maximus | New Issue | |
2011-08-26 11:06 | Maximus | File Added: Dialog.cpp.diff | |
2011-08-26 11:13 | DrKnS | Note Added: 0007548 | |
2011-08-26 19:27 | Maximus | Note Added: 0007549 | |
2011-08-26 19:37 | DrKnS | Note Added: 0007550 | |
2011-08-26 19:54 | Maximus | Note Added: 0007551 | |
2011-08-26 20:01 | DrKnS | Note Added: 0007552 | |
2011-08-26 22:51 | Maximus | Note Added: 0007554 | |
2011-08-28 16:05 | DrKnS | Build | => 2179 |
2011-08-28 16:05 | DrKnS | Status | new => closed |
2011-08-28 16:05 | DrKnS | Assigned To | => DrKnS |
2011-08-28 16:05 | DrKnS | Resolution | open => fixed |
2011-08-28 16:05 | DrKnS | Fixed in Version | => 3.0 |