Xphoton crash with full TCP/IP stack

message unavailable

In article <39DA7F8A.3B3F3A55@hentschel.net>,
Thomas Hentschel <thomas@hentschel.net> wrote:

$ slay Xphoton
$ slay io-net
$ io-net -del900 -ptcpip -ppppmgr
$ ifconfig en0 192.168.1.16 up
$ route add default 192.168.1.1
$ Xphoton -once

When I start an X program at this point (I used Redhat source navigator,
which is a TCL/TK program – this was build from source), I can observe
garbled video in some windows (partial background etc).

Upon exiting Source Navigator, Xphoton crashes.
This doesn’t happen with the tiny tcpip (-pttcpip) stack.

Do I need something like a different library to be linked in ? Or is it
a plain ol’ bug ?

Sounds like a plain ol’ bug.
Run dumper and send me the dump file.


Garry Turcotte (R&D)
QNX Software Systems, Ltd.

Garry Turcotte wrote:

In article <> 39DA7F8A.3B3F3A55@hentschel.net> >,
Thomas Hentschel <> thomas@hentschel.net> > wrote:

$ slay Xphoton
$ slay io-net
$ io-net -del900 -ptcpip -ppppmgr
$ ifconfig en0 192.168.1.16 up
$ route add default 192.168.1.1
$ Xphoton -once

[snip]

Do I need something like a different library to be linked in ? Or is it
a plain ol’ bug ?

Sounds like a plain ol’ bug.
Run dumper and send me the dump file.

Bleh, now that I’m finally able to start -ptcpip on boot, everything
works normal. So, it seems something is missing in the above sequence,
something which is done when booting straight with -ptcpip. You still
consider this worth looking at ?

-Th

Yes, Patrick Trainor is putting the native photon code up on the sdl
site shortly.
We did the X emulator variant a long time ago, but as nobody
had RTP, I didn’t see the point in putting it up.

“Kristoph A. Cichocki-Romanov” <news1@kristoph.net> wrote in message
news:8sbeah$8ed$1@inn.qnx.com

Greetings,

I noticed that some attempts to port SDL ( Simple DirectMedia Layer ) to
RTP
were made recently. Is anyone activelly working on this?

]{ristoph

Hi Thomas

I’ve also downloaded and built snav and its running and looking good but its
painfully slow in updating windows/popping up menus etc - did you witness
the same ? if so what did you do to get around it?

I’m running the full tcpip stack BTW.

Regards

Jim

Jim Atkins wrote:

Hi Thomas

I’ve also downloaded and built snav and its running and looking good but its
painfully slow in updating windows/popping up menus etc - did you witness
the same ? if so what did you do to get around it?

I’m running the full tcpip stack BTW.

Regards

Jim

The thing to remember is that snav is tcl-interpreted and huge, so it’s
sot the snappiest thing to begin with. But I had it running pretty
usable on a 150MHz Pentium with 96 Megs.

Two things I noticed :
you can get into the behavior you decribed if you manage to crash
Xphoton and then restart another instance of snav.

snav does a lot of reindexing it’s cross-ref database. Since tcl on RTP
is not multithreaded (at least ./configure can’t figure it out), you’ll
see the UI “stall” everytime it’s doing that, which makes it appear slow
to respond.


I don’t thing which tcp/ip stack you use makes a difference.

Did you try to re-compile gdb as well ? (the one which came with snav,
which would enable debugging inside the editor).
I wish I knew where to get the sources of the RTP gdb from – shouldn’t
they be available ? Alternatively, one could hack up snav to use the
pdebug interface.

Right now I’m running it on a dual PIII/600 with 512 Megs, it’s really
snappy there :slight_smile:

-Th

Thomas Hentschel <thomas@hentschel.net> wrote:

Did you try to re-compile gdb as well ? (the one which came with snav,
which would enable debugging inside the editor).
I wish I knew where to get the sources of the RTP gdb from – shouldn’t
they be available ? Alternatively, one could hack up snav to use the
pdebug interface.

ftp://ftp.qnx.com/usr/free/neutrino/development/gnu/

Warning, it’s not pretty


cburgess@qnx.com

“Kristoph A. Cichocki-Romanov” schrieb:

Greetings,

Voyage seems unable to fully download embedded animated GIF images of 250K
or more. It typically downloads one frame and displays it and then gives up
while trying to download the rest. On a faster connection I get more but
never quite the full image. (It does work on Netscape, Mozilla and IE5).

Check the image cache settings… I think the default is pretty low…
Increasing the image cache might help.
Also if the webpage includes also high color images, it might be usefull to
set voyager to reduce to 256 colors. This saves a lot of image cache…

Sven

Mail me if you would like a sample URL.

Also, I assume the PNG support is currently not present in Voyager … or it
just me ? Is this expected in Patch A. I am getting tired of looking at
empty squares on Igor’s website … ;o)

]{ristoph

Greetings,

Check the image cache settings… I think the default is pretty low…
Increasing the image cache might help.

It does indeed. Thank you Sven.

I guess my only other comment is that it downloads the entire image before
displaying the second and subsequent frames. Ideally it should display each
frame as it is downloaded.

]{ristoph

Actually, the image is only 250K and the cache size was 4096K so its curious
that this should make a difference.

]{ristoph

Check the image cache settings… I think the default is pretty low…
Increasing the image cache might help.

It does indeed. Thank you Sven.

I guess my only other comment is that it downloads the entire image before
displaying the second and subsequent frames. Ideally it should display
each
frame as it is downloaded.

]{ristoph

Kristoph A. Cichocki-Romanov <news1@kristoph.net> wrote:

Actually, the image is only 250K and the cache size was 4096K so its curious
that this should make a difference.

The setting relates to the size of the image after it is uncompressed
into a real displayable image… nothing to do with the size of the
file.

pete@qnx.com wrote:
: Kristoph A. Cichocki-Romanov <news1@kristoph.net> wrote:
: > Actually, the image is only 250K and the cache size was 4096K so its curious
: > that this should make a difference.

: The setting relates to the size of the image after it is uncompressed
: into a real displayable image… nothing to do with the size of the
: file.

And the fact that the image has to be in contiguous memory. Of course the
image cache has code to garbage collect and make the fragments into bigger
blocks so that may not be as much of the issue.

Rick…

Rick Duff Internet: rick@astra.mb.ca
Astra Network QUICS: rgduff
QNX Consulting and Custom Programming URL: http://www.astra.mb.ca
+1 (204) 987-7475 Fax: +1 (204) 987-7479

What about Cystal Clear?

http://sourceforge.net/projects/crystalclear/

Re: phfont freetype

the font rendering engines do a lot of the same work (outlines
-to- bitmap), right ? just different transports (msg/QNET vs TCP) ?

had you considered a phfont+X fs ?
for Xphoton, phinx, etc…


Are there 2 cvs’es and is the public one getting stuff?
http://cvs.qnx.com/

Colin Burgess <cburgess@qnx.com> wrote in message
news:9j1u2g$dq$2@nntp.qnx.com

I’ve just put a port of xpdf 0.92 at

staff.qnx.com/~cburgess/freestuff

Make sure that you install

libxpm-3.4-x86-public.qpr
t1lib-1.0.1-x86-public.qpr
freetype-1.3.1-x86-public.qpr

and then

xpdf-0.92-x86-public.qpr

Lee R. Copp <> Lee.R.Copp@michiganscientific.com> > wrote:
phpdf isn’t shipped with QNX 6.1. If you’re using QNX 6.1 you can
download a pdf viewer from
http://quics.qnx.com/cgi-bin/dir_find.cgi?/usr/free> . Just search for
‘pdf’.

I downloaded the ppdf.tgz (1458.42k) which is described as a ‘Photon PDF
Viewer’ but after unzipping and un-taring I read the readme
which states that it is not a PDF viewer and it will NOT open PDF
files…They are only doing the GUI front end. So, is there a REAL
pdf viewer out there???



\

cburgess@qnx.com

rebooting and starting up the system again, it reverts back to english
even if it says swedish in the Localization.

You’ve replaced the devi-hirun from developers.qnx.com right?

news:a1heih$bd$1@inn.qnx.com
nntp://inn.qnx.com/qdn.public.qnxrtp.photon/2379

QSSL you gotta fix this or mention it in the ISSUES
(I believe it’s fixed in 6.2 but it’s becoming a FAQ)

kabe

Yamin,

How are you using PtTreeModifyItemString( )? Are you doing anything with
the PtTreeItem pointer, or have any data associated with that particular
PtTreeItem?

If you change the length of the string, it may cause the PtTreeItem to be
reallocated. This would definitely screw up any references you may have had
to that item.

e.g. if you are modifying “my_tree_item” make sure you do something like
this:

void* tmp_data = my_tree_item->data;
PtTreeItem_t* new_item = PtTreeModifyItemString( my_tree_widget,
my_tree_item, “My new string” );
if ( new_item == NULL )
return some_error;
new_item->data = tmp_data;
my_tree_item = new_item;

-Chris

“Yamin” <y2bismil@uwaterloo.ca> wrote in message
news:aellt1$k90$1@inn.qnx.com

Hey all,

I ran into this weird problem at work today. Basically, on some call to
PtModifyString where the string length changes, a seg fault would result
on
that call.

I’m 99.999% sure its my problem somewhere else in my code, as I’ve tried
to
run tests to just test PttreeModifyString scenarious and they all seem to
pass.

But just to check. Are there any known issues with PttreeModifyString or
anything else you guys can think of besides me messing up memory
somewhere?
There’s not many calls to dynamic memory allocation, so I’m guessing maybe
writing outside of array bounds or something like that. If it’s an issue,
I
am using the pttree inside a PtOsContainer to prevent flickering.

I remember having a similar problem like this a while ago, but it just
seemed to disappear as I kept coding…guess it comes back to haunt me.

Thanx all,

Yamin

“Chris Wiebe” <cwiebe@qnx.com> wrote in message
news:aeluag$3nv$1@nntp.qnx.com

Yamin,

How are you using PtTreeModifyItemString( )? Are you doing anything with
the PtTreeItem pointer, or have any data associated with that particular
PtTreeItem?

If you change the length of the string, it may cause the PtTreeItem to be
reallocated. This would definitely screw up any references you may have
had
to that item.

e.g. if you are modifying “my_tree_item” make sure you do something like
this:

void* tmp_data = my_tree_item->data;
PtTreeItem_t* new_item = PtTreeModifyItemString( my_tree_widget,
my_tree_item, “My new string” );
if ( new_item == NULL )
return some_error;
new_item->data = tmp_data;
my_tree_item = new_item;

The error occurs directly on the line PtTreeModifyItemString.
I know the item is valid as I only use

PtTreeItem_t* cur_item;
cur_item = getrootitem(my_widget);
if( cur_item == NULL ) return;

//build string

PtTreeModifyItemString( my_tree_widget, cur_item , “My new string” );

Would it help if I provided the exact address of the error as per ddd?

Yamin


-Chris

“Yamin” <> y2bismil@uwaterloo.ca> > wrote in message
news:aellt1$k90$> 1@inn.qnx.com> …
Hey all,

I ran into this weird problem at work today. Basically, on some call to
PtModifyString where the string length changes, a seg fault would result
on
that call.

I’m 99.999% sure its my problem somewhere else in my code, as I’ve tried
to
run tests to just test PttreeModifyString scenarious and they all seem
to
pass.

But just to check. Are there any known issues with PttreeModifyString
or
anything else you guys can think of besides me messing up memory
somewhere?
There’s not many calls to dynamic memory allocation, so I’m guessing
maybe
writing outside of array bounds or something like that. If it’s an
issue,
I
am using the pttree inside a PtOsContainer to prevent flickering.

I remember having a similar problem like this a while ago, but it just
seemed to disappear as I kept coding…guess it comes back to haunt me.

Thanx all,

Yamin

\

Can you post a code snippet of the lines leading up to
PtTreeModifyItemString and the ddd error output?

“Yamin” <y2bismil@uwaterloo.ca> wrote in message
news:aem4v0$149$1@inn.qnx.com

“Chris Wiebe” <> cwiebe@qnx.com> > wrote in message
news:aeluag$3nv$> 1@nntp.qnx.com> …
Yamin,

How are you using PtTreeModifyItemString( )? Are you doing anything
with
the PtTreeItem pointer, or have any data associated with that particular
PtTreeItem?

If you change the length of the string, it may cause the PtTreeItem to
be
reallocated. This would definitely screw up any references you may have
had
to that item.

e.g. if you are modifying “my_tree_item” make sure you do something like
this:

void* tmp_data = my_tree_item->data;
PtTreeItem_t* new_item = PtTreeModifyItemString( my_tree_widget,
my_tree_item, “My new string” );
if ( new_item == NULL )
return some_error;
new_item->data = tmp_data;
my_tree_item = new_item;


The error occurs directly on the line PtTreeModifyItemString.
I know the item is valid as I only use

PtTreeItem_t* cur_item;
cur_item = getrootitem(my_widget);
if( cur_item == NULL ) return;

//build string

PtTreeModifyItemString( my_tree_widget, cur_item , “My new string” );

Would it help if I provided the exact address of the error as per ddd?

Yamin


-Chris

“Yamin” <> y2bismil@uwaterloo.ca> > wrote in message
news:aellt1$k90$> 1@inn.qnx.com> …
Hey all,

I ran into this weird problem at work today. Basically, on some call
to
PtModifyString where the string length changes, a seg fault would
result
on
that call.

I’m 99.999% sure its my problem somewhere else in my code, as I’ve
tried
to
run tests to just test PttreeModifyString scenarious and they all seem
to
pass.

But just to check. Are there any known issues with PttreeModifyString
or
anything else you guys can think of besides me messing up memory
somewhere?
There’s not many calls to dynamic memory allocation, so I’m guessing
maybe
writing outside of array bounds or something like that. If it’s an
issue,
I
am using the pttree inside a PtOsContainer to prevent flickering.

I remember having a similar problem like this a while ago, but it just
seemed to disappear as I kept coding…guess it comes back to haunt
me.

Thanx all,

Yamin



\

There was a bug in PtTreeModifyItemString(), it is fixed in 6.2.
-Misha.
“Yamin” <y2bismil@uwaterloo.ca> wrote in message
news:aem4v0$149$1@inn.qnx.com

“Chris Wiebe” <> cwiebe@qnx.com> > wrote in message
news:aeluag$3nv$> 1@nntp.qnx.com> …
Yamin,

How are you using PtTreeModifyItemString( )? Are you doing anything
with
the PtTreeItem pointer, or have any data associated with that particular
PtTreeItem?

If you change the length of the string, it may cause the PtTreeItem to
be
reallocated. This would definitely screw up any references you may have
had
to that item.

e.g. if you are modifying “my_tree_item” make sure you do something like
this:

void* tmp_data = my_tree_item->data;
PtTreeItem_t* new_item = PtTreeModifyItemString( my_tree_widget,
my_tree_item, “My new string” );
if ( new_item == NULL )
return some_error;
new_item->data = tmp_data;
my_tree_item = new_item;


The error occurs directly on the line PtTreeModifyItemString.
I know the item is valid as I only use

PtTreeItem_t* cur_item;
cur_item = getrootitem(my_widget);
if( cur_item == NULL ) return;

//build string

PtTreeModifyItemString( my_tree_widget, cur_item , “My new string” );

Would it help if I provided the exact address of the error as per ddd?

Yamin


-Chris

“Yamin” <> y2bismil@uwaterloo.ca> > wrote in message
news:aellt1$k90$> 1@inn.qnx.com> …
Hey all,

I ran into this weird problem at work today. Basically, on some call
to
PtModifyString where the string length changes, a seg fault would
result
on
that call.

I’m 99.999% sure its my problem somewhere else in my code, as I’ve
tried
to
run tests to just test PttreeModifyString scenarious and they all seem
to
pass.

But just to check. Are there any known issues with PttreeModifyString
or
anything else you guys can think of besides me messing up memory
somewhere?
There’s not many calls to dynamic memory allocation, so I’m guessing
maybe
writing outside of array bounds or something like that. If it’s an
issue,
I
am using the pttree inside a PtOsContainer to prevent flickering.

I remember having a similar problem like this a while ago, but it just
seemed to disappear as I kept coding…guess it comes back to haunt
me.

Thanx all,

Yamin



\