[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: possible bug



How is some_other_string allocated then?  Remember C pointers emulate
references - so somestring and some_other_string both refer to the same
string.  If some_other_string is free'd somestring will be as well.
However unless you manually update the somestring, the pointer will be
pointing to an invalid address.

        nash

* Jeffrey Goddard <moosewood@mooseroot.org> wrote:
> gchar *somestring;
> 
> 
> void
> some_callback_function(widget, user_data)
> {
> 	somestring = some_other_string;
> }
> 
> as long as this is done in a callback function, the string stays. if it is 
> done in a function that is not a callback function, when the program goes 
> into the gtk_main() loop the string is cleared(?) to a null string. the 
> address of the pointer is still the same, but the data is off in the bit 
> bucket somewhere. i used the term initializing incorrectly in this context. i 
> am actually assigning values from a MySQL database, and it's the initial 
> loading of all the variables.
> Jeffrey
> On Wednesday 01 January 2003 14:48, Harring Figueiredo wrote:
> >  If you post your coded snipet it would help us find the problem.
> >
> >  What do you mean by initializing ?
> >
> >  foo(){
> >  gchar*  c =  "something" ;
> > }
> >
> >   foo(){
> >   gchar* c = strdup("something");
> >
> > }
> >
> >  Both initialize, but have different memory context.
> >
> >  Again, posting the code would help.
> >
> > Harring.
> 
> _______________________________________________
> gtk-app-devel-list mailing list
> gtk-app-devel-list@gnome.org
> http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list
> 
-- 
Brett Nash <nash@nash.nu>
Sometimes it's better to light a flamethrower than curse the darkness.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]