Einzelnen Beitrag anzeigen

_BlackDragon_

Registriert seit: 4. Dez 2007
Ort: Eschweiler
64 Beiträge
 
#736

BUG (Fix) ;-)

  Alt 17. Jul 2008, 09:02
Hallo nochmal an die Entwickler.

Habe eine Fehlerquelle gefunden. Hab die aktuelle 0.0.4.0er Version.

In der Unit AdDraws.pas (TAdPluginPropertyList.WriteProperties(AAppl: TAd2DApplication)
ist keine Bereichsprüfung implementiert, daher stürtz das Programm ab sobald FValues leer ist.

Siehe Meldung:


---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt JnR.exe ist eine Exception der Klasse ERangeError mit der Meldung 'Fehler bei Bereichsprüfung' aufgetreten.


Code:

procedure TAdPluginPropertyList.WriteProperties(AAppl: TAd2DApplication);
begin
  //Store the values in the Ad2dAppliation instance
  AAppl.SetProperties(Length(FValues), @FValues[0]); //<-- Wenn FValues leer ist, ist @FValues[0] = nil
                                                     // und dann krachts, autsch
end;
Habs selber erstmal so gelöst:

Code:

procedure TAdPluginPropertyList.WriteProperties(AAppl: TAd2DApplication);
begin
  //Store the values in the Ad2dAppliation instance
  if Length(FValues) > 0 then
  begin
    AAppl.SetProperties(Length(FValues), @FValues[0]);
  end;
end;
Sollte eigentlich reichen, weil wenn keine Properties vorhanden sind, könne auch keine zugewiesen werden. (klingt plausibel, oder?)

So, hoffe ein wenig geholfen zu haben und noch mal ein dickes Lob an die Entwickler.

Gruss

BlackDragon
  Mit Zitat antworten Zitat