Einzelnen Beitrag anzeigen

schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#1

Ein Bugreport und das hier!

  Alt 17. Feb 2013, 09:02
Folgendes:

Habe soeben versucht,mir einen Account auf der Bugreportseite zu schaffen. Bis zur Bestätigungsmail ding noch alles gut. Danach nicht mehr.Mein Dehler war, das ich den Button "Update User" missverstanden habe und eine der Registerkarten vorher angeklickt habe. Hätte ja sein können, das ich dort vorher mein Profil anpassen kann. Als ich dann jedoch auf die erste Registerseite zurück wollte, bekam ich die lapidare Meldung: "Signup no more valid" und die Aufforederung, den Vorgang zu wiederholen.

Genau das werde ich aber nicht tun. Hab nicht so viel Zeit,ich habe noch andere Interessen. Macht bitte den Login etwas demokratischer. Diktatur ist out. Weg mit der Ideologie, fordere ich.

HIer der Bugreport, den ich dort posten wollte:

Lazarus 0.9.29 -> Buld vom 16.02.2010

Fehler zeigt sich in "control.inc"

Delphi-Quellcode:
{------------------------------------------------------------------------------
  TControl GetText
------------------------------------------------------------------------------}

function TControl.GetText: TCaption;
var
  len: Integer;
begin
  // Check if GetTextBuf is overridden, otherwise
  // we can call RealGetText directly
 #### if TMethod(@Self.GetTextBuf).Code = Pointer(@TControl.GetTextBuf) #### in dieser Zeile
  then begin
    Result := RealGetText;
  end
  else begin
    // Bummer, we have to do it the compatible way.
    DebugLn('Note: GetTextBuf is overridden for: ', Classname);
    
    len := GetTextLen;
    if len = 0
    then begin
      Result := '';
    end
    else begin
      SetLength(Result, len+1); // make sure there is room for the extra #0
      FillChar(Result[1], len, #0);
      len := GetTextBuf(@Result[1], len+1);
      SetLength(Result, len);
    end;
  end;
end;

//HIer ist diese Fehlerzeile noch einmal

if TMethod(@Self.GetTextBuf).Code = Pointer(@TControl.GetTextBuf)
Ich erhalte deshalb eine SIGSEGV Exception.

Delphi-Quellcode:
procedure TForm1.CalendarDayChanged(Sender: TObject);
begin
  DlgActions := TDlgActions.Create(Self, Calendar.DateTime);
  DlgActions.Prompt := DateToStr(Calendar.DateTime);
  if DlgActions.Execute then
  begin
    FDateTimeAction := DlgActions.MyAction;
  end;
  FMyAction := DateTimeToStr(Calendar.DateTime) + FDateTimeAction;
  Apply(FMyAction);
  DlgActions.Free;
end;
MyAction ist ein simpler String.

Der Dialog, von mir gebaut, lässt sich nicht aufrufen, stattdessen kommt die Exception. Habe in der Projektdatei beides getestet:

- Application.CreateForm(..) aufgerufen
- Application.CreateForm(..) AUfruf auskommentiert

Die Exception kommt in beiden Fällen

Mögen die Lazarusentwickler bitte so freundlich sein und den Bugreport auf die vorgesehene Seite stellen oder den Fehler gleich beseitigen. Ich kenne mich mit den Sourcen zu wenig aus, um in vertretbarer Zeit die Ursache zu finden und dann den Bug zu beseitigen.
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.
  Mit Zitat antworten Zitat