James Hunkins wrote:
>      ww.pappl->pappw[0] = 0x9da162   == &mw0  -> correct
>      ww.pappl->pappw[1] = 0x9da1ca   != &aw1  -> error
>      ww.pappl->pappw[2] = 0x9da232   != &aw2  -> error

I've never programmed QPtr in C and it's 6:30 in the morning, I should
probably get some sleep. Anyway, C can be a bitch. It's probably the
pointer/array ambiguity that's causing you grief here. If you have,
for example,

char *text;

Then text[0] and text[1] are the first respectively seconds characters
of text, not two pointers! In this case the type is (WM_appw_t*). Now
guess how long the WM_appw_t is. Yes, right, 0x68 bytes.

Try this

(WM_appw_t*)(&ww.pappl->pappw)[0]
(WM_appw_t*)(&ww.pappl->pappw)[1]
(WM_appw_t*)(&ww.pappl->pappw)[2]

You'll find this probably works much better. If not, I blame sleep
deprivation.

Marcel

_______________________________________________
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm

Reply via email to