убийство массива

 
при различных вариантах инициализации/деинициализации с массивами происходят странные вещи
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 0x5E5EFF
#property indicator_color2 0x59B500
#property indicator_color3 0x73A015
#property indicator_color4 0x73A015

extern int       Per_f=5;
extern int       Per_s=34;
extern int       app_Price=4;
extern int       SilaSign=10;
extern int       langS1=3;
extern int       langS2=3;
extern bool      FileCorr=true;
extern bool      ShowLines=true;
//---- buffers
double Diver1[];
double Diver2[];
double MM_Indicator[];
double MM_Price[];
//---- переменные
 int i, n, m, CurPeriod, preBars, handle,
     FileWriteTime=-1, exBar;
 bool InitExp, FileWriteFunk=true,
      FlagNull_b, FlagNull_f,
      FlagInd_b, FlagInd_f,
      FlagUp, FlagDown;
 string  FName="", CName="", AName="";
 double Ind_1, Ind_2, Ind_1f, exPrice;
 /*
 static int cnt_tp[51];  
 static int cnt_ti[51];  
 static double cnt_P[51]; 
 static double cnt_I[51]; 
 static double cnt_Ip[51];   
 */
 int cnt_tp[51];  
 int cnt_ti[51];  
 double cnt_P[51]; 
 double cnt_I[51]; 
 double cnt_Ip[51];   
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
 {
//----
  Print("Range01=",ArrayRange(cnt_tp,0),"/",ArrayRange(cnt_P,0),"/",
                 ArrayRange(cnt_ti,0),"/",ArrayRange(cnt_I,0),"/",ArrayRange(cnt_Ip,0));
//---- indicators
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,242);
   SetIndexBuffer(0,Diver1);
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexArrow(1,241);
   SetIndexBuffer(1,Diver2);
   if (ShowLines)
   {
    SetIndexStyle(2,DRAW_SECTION,STYLE_DASH,1,0x73A015);
    SetIndexBuffer(2,MM_Indicator);
    SetIndexEmptyValue(2,0.0);
    ArraySetAsSeries(MM_Indicator,true);
    SetIndexStyle(3,DRAW_SECTION,STYLE_SOLID,-1,0x73A015);
    SetIndexBuffer(3,MM_Price);
    SetIndexEmptyValue(3,0.0);
    ArraySetAsSeries(MM_Price,true);
   }
   /*else
   {
   SetIndexStyle(2,DRAW_ARROW);
   SetIndexArrow(2,249);
   SetIndexBuffer(2,MM_Indicator);
   SetIndexStyle(3,DRAW_ARROW);
   SetIndexArrow(3,249);
   SetIndexBuffer(3,MM_Price);
   }*/
   SetIndexLabel(0,"Div_ВнизW");
   SetIndexLabel(1,"Div_ВверхW");
   SetIndexLabel(2,"ext_Ind");
   SetIndexLabel(3,"ext_Pric");
//----
  FName="DivWav_"+Symbol()+Period(); 
  CName="CondCh_"+Symbol()+Period();
  AName="AllarmCond_"+Symbol()+Period();
  GlobalVariableSet(FName,0); GlobalVariableSet(FName+"T",0);
  if(GlobalVariableCheck(CName)==false) GlobalVariableSet(CName,0);
  if(!FileCorr)
    {handle=FileOpen(FName+".dat",FILE_BIN); FileClose(handle); FileDelete(FName);
     FileWriteFunk=false;
    }
  else {FileWriteTime=-1; FileWriteFunk=true; }
//----
  Print("Range02=",ArrayRange(cnt_tp,0),"/",ArrayRange(cnt_P,0),"/",
                 ArrayRange(cnt_ti,0),"/",ArrayRange(cnt_I,0),"/",ArrayRange(cnt_Ip,0));

   return(0);
 }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//---- TODO: add your code here
   GlobalVariableDel(FName); GlobalVariableDel(FName+"T"); 
   GlobalVariableDel(CName); GlobalVariableDel(AName);
   if (FileCorr) FileDelete(FName+".dat");
//----
   return(0);
  }



лог:= загрузили, компилировали, открыли-закрыли меню с входными переменными
01:09:12 DivWav EURUSD,H1: loaded successfully
01:09:13 DivWav EURUSD,H1: initialized
01:09:13 DivWav_back EURUSD,H1: loaded successfully
01:09:13 DivWav_back EURUSD,H1: Range01=51/51/51/51/51
01:09:13 DivWav_back EURUSD,H1: Range02=51/51/51/51/51
01:09:13 DivWav_back EURUSD,H1: initialized
01:09:24 DivWav_back EURUSD,H1: deinitialized
01:09:24 DivWav_back EURUSD,H1: loaded successfully
01:09:24 DivWav_back EURUSD,H1: Range01=51/51/51/51/51
01:09:24 DivWav_back EURUSD,H1: Range02=51/51/51/51/51
01:09:24 DivWav_back EURUSD,H1: initialized
01:09:45 DivWav_back EURUSD,H1: deinitialized
01:09:45 DivWav_back EURUSD,H1: Range01=0/0/0/0/0
01:09:45 DivWav_back EURUSD,H1: Range02=0/0/0/0/0
01:09:45 DivWav_back EURUSD,H1: initialized

 
загрузили, компилировали, открыли-закрыли меню с входными переменными

Если я не ошибаюсь, эта ошибка с оценкой размера неинициализированного массива на старте уже исправлена Славой. Подождите следующего билда - в нем будет исправление.
 
да. эта ошибка исправлена.
Причина обращения: