View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0001865 | Far Manager | Plugins API | public | 2011-08-26 10:06 | 2011-08-28 15: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 10:06 | Maximus | New Issue | |
| 2011-08-26 10:06 | Maximus | File Added: Dialog.cpp.diff | |
| 2011-08-26 10:13 | DrKnS | Note Added: 0007548 | |
| 2011-08-26 18:27 | Maximus | Note Added: 0007549 | |
| 2011-08-26 18:37 | DrKnS | Note Added: 0007550 | |
| 2011-08-26 18:54 | Maximus | Note Added: 0007551 | |
| 2011-08-26 19:01 | DrKnS | Note Added: 0007552 | |
| 2011-08-26 21:51 | Maximus | Note Added: 0007554 | |
| 2011-08-28 15:05 | DrKnS | Build | => 2179 |
| 2011-08-28 15:05 | DrKnS | Status | new => closed |
| 2011-08-28 15:05 | DrKnS | Assigned To | => DrKnS |
| 2011-08-28 15:05 | DrKnS | Resolution | open => fixed |
| 2011-08-28 15:05 | DrKnS | Fixed in Version | => 3.0 |