Bug 2326 - tlwidget stores 64-bit pointers into 32-bit ints
Summary: tlwidget stores 64-bit pointers into 32-bit ints
Status: RESOLVED FIXED
Alias: None
Product: frysk
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
: P1 normal
Target Milestone: ---
Assignee: Chris Moller
URL:
Keywords:
Depends on:
Blocks: 1664 2213
  Show dependency treegraph
 
Reported: 2006-02-10 21:37 UTC by Andrew Cagney
Modified: 2006-03-24 22:02 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Cagney 2006-02-10 21:37:58 UTC
tlwidget does the assignment (ftkstripchart.c):

    sigval.sival_int = GPOINTER_TO_INT(stripchart);

and then the extraction:

  FtkStripchart * stripchart = GINT_TO_POINTER(sigval.sival_int);

unfortunatly, sigval_t is defined as:

/* Type for data associated with a signal.  */
typedef union sigval
  {
    int sival_int;
    void *sival_ptr;
  } sigval_t;

so, on 64-bit, that would only be a 32-bit field.
Comment 1 Chris Moller 2006-03-24 21:49:17 UTC
The description is from an old version of the stripchart that used kernel
timers.  The current version uses glib timers and thus doesn't contain the
signal code cited.
Comment 2 Chris Moller 2006-03-24 22:02:55 UTC
The cited code is obsolete and is no longer in the widget.