[lazarus] Yes I didn't stop yet

Shane Miller SMiller1 at stvgb.org
Thu Jul 8 10:06:02 EDT 1999


Interesting.  I created a test app (which we all hate to do) to show Peter the problem, but it worked.  That sucks.

The test app was:

Program Test;
{$mode objfpc}
uses sysutils;

Var
NewPChar : PChar;
StringVar : String;

Begin

Stringvar := '<hello>';

NewPChar := StrAlloc(Length(StringVar)+1);

StrPCopy(NewPChar, StringVar);

Writeln('StringVar = '+StringVar);
Writeln('NewPChar = '+NewPChar);

end.


yet my source in gtkint.pp (procedure SetCallBack) does not work.
Anyone have a clue?

Shane


>>> Peter Vreman <pfvreman at wins.uva.nl> 07/08 8:42 AM >>>

the crash in the compiler with multiple messages, see bottom of the
message.

For the other 2 bugs i didn't see any source code


Peter



On Thu, 8 Jul 1999, Shane Miller wrote:

> What bug is fixed?  The Dispatch bug or the StrPCopy bug?
> 
> Shane
> 
> 
> >>> Peter Vreman <pfvreman at wins.uva.nl> 07/08 4:59 AM >>>
> 
> Fixed, it was a wellknown copy&paste bug :)
> 
> Peter
> 
> 
> On Wed, 7 Jul 1999, Michael A. Hess wrote:
> 
> > Shane I made a test program using Dispatch. Don't try and use it yet it
> > appears to have problems. If I only define one procedure with a message
> > it works fine. If I try to define a second one the compiler panics with
> > a 9999 error.
> > 
> > For the FPC guys here is what blows. This gives and internal error 9999
> > and indicates it occurs at the 'end;' statement of the class definition.
> > Now if comment out the second message and anything to do with DoClick2
> > the program compiles and works correctly.
> > 
> > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++===
> > 
> > program msgtest;
> > 
> > {$mode delphi}
> > 
> > uses sysutils;
> > 
> > type
> >    TMyObject = Class (Tobject)
> >    protected
> >       procedure DoClick(var msg); message 3;
> >       procedure DoClick2(var msg); message 4;
> >    public
> >       procedure Test;
> >    end;
> > 
> > procedure TMyObject.DoClick(var msg);
> > begin
> >    writeln ('Called DoClick - msg = ' + inttostr(longint(msg)));
> > end;
> > 
> > procedure TMyObject.DoClick2(var msg);
> > begin
> >    writeln ('Called DoClick2 = msg = ' + inttostr(longint(msg)));
> > end;
> > 
> > procedure TMyObject.Test;
> > var
> >    msg : integer;
> > begin
> >    msg := 3;
> >    Dispatch(msg);
> > 
> >    msg := 4;
> >    Dispatch(msg);
> > end;
> > 
> > var
> >    MyObject : TMyObject;
> >     
> > begin
> >    MyObject:=TMyObject.Create;
> >    MyObject.Test;
> >    MyObject.Free;
> > end.
> > 
> > -- 
> > ==== Programming my first best destiny! ====
> > 
> > Michael A. Hess      Miracle Concepts, Inc.
> > mhess at miraclec.com   http://www.miraclec.com 
> > 
> > _________________________________________________________________
> >      To unsubscribe: mail lazarus-request at miraclec.com with
> >                 "unsubscribe" as the Subject
> >     archives at http://www.miraclec.com/list_archives/lazarus 
> > 
> 
> _________________________________________________________________
>      To unsubscribe: mail lazarus-request at miraclec.com with
>                 "unsubscribe" as the Subject
>     archives at http://www.miraclec.com/list_archives/lazarus 
> 
> _________________________________________________________________
>      To unsubscribe: mail lazarus-request at miraclec.com with
>                 "unsubscribe" as the Subject
>     archives at http://www.miraclec.com/list_archives/lazarus 
> 

_________________________________________________________________
     To unsubscribe: mail lazarus-request at miraclec.com with
                "unsubscribe" as the Subject
    archives at http://www.miraclec.com/list_archives/lazarus






More information about the Lazarus mailing list