Go to Post Never leave future engineers alone, especially with something like gravity. - Alex Pelan [more]
Home
Go Back   Chief Delphi > Technical > Programming > C/C++
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
 
 
Thread Tools Rate Thread Display Modes
Prev Previous Post   Next Post Next
  #2   Spotlight this post!  
Unread 11-12-2010, 16:27
byteit101's Avatar
byteit101 byteit101 is offline
WPILib maintainer (WPI)
AKA: Patrick Plenefisch
no team (The Cat Attack (Formerly))
Team Role: Programmer
 
Join Date: Jan 2009
Rookie Year: 2009
Location: Worcester
Posts: 699
byteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of lightbyteit101 is a glorious beacon of light
Re: random segfault

I've debugged it some more, and I am completely confused.
a variable is changing its address without being updated!
I have the src variable, which is a pointer to a interface, and is assigned either null, or a new TCPsender. I then print out the pointer address, and it looks good.
Later, after i'm enabled and in the telop function, I call GetString, and print out the address, then try to deref src, and ultimatly fail because somehow, src changed even though those are the only two active lines of code that reference src.
Output attached (how does one copy and paste the text from the NetConsole? I could not get a sticking selection)
Code:
Code:
        void OperatorControl(void)
        {
            cerr<<"IN oc"<<endl;
            int loops=0;
            while (IsEnabled())
            {
                cerr<<"looping";
                cerr<<zb.GetString("ival")<<endl;
            }
        }
Constructor
Code:
    if ((mode & RemoteData) == RemoteData)
        src = new System451::Communication::Dashboard::ZomBTCPSource();
    else
        src = 0;
    debugf("init: src=%p\r\n", src);
Code:
string ZomBDashboard::GetString(string name)
{
    if (src)
    {
        debugf("\r\ngsi: src=%p\r\n", src);
        return src->Get(name);
    }
    return "";
}
Attached Thumbnails
Click image for larger version

Name:	ncpointererr.PNG
Views:	12
Size:	26.4 KB
ID:	9489  
__________________
Bubble Wrap: programmers rewards
Watchdog.Kill();
printf("Watchdog is Dead, Celebrate!");
How to make a self aware robot: while (∞) cout<<(sqrt(-∞)/-0);
Previously FRC 451 (The Cat Attack)
Now part of the class of 2016 at WPI & helping on WPILib
Reply With Quote
 


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Random? TexasFederation Programming 1 16-09-2007 13:47
Random Stuff Brm789 Chit-Chat 11 20-11-2003 16:13
How random is random???? archiver 1999 0 23-06-2002 21:59
Random Marc P. Chit-Chat 138 13-02-2002 15:11
Random Question... Jessica Boucher Chit-Chat 26 02-07-2001 21:37


All times are GMT -5. The time now is 13:36.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi