arcweb_url / arcweb_urlw problem

Tom Hughes tom at compton.nu
Sat Nov 16 16:21:30 GMT 2002


The 32 bit file handle changes have broken the Arcweb module.

The problem is that the arcweb_message_fetch_request strucure includes
a member of type arcweb_url, which is really is an arcweb_url as at that
point arcweb32.h has not been included yet.

The problem is that if I try and pass that member to a function that is
prototyped as taking an argument of type arcweb_url I get an error from
the compiler because the macro from arcweb32.h has redefined arcweb_url
to be arcweb_urlw by the time the compiler sees the function. Here's an
example of what I mean:

  #include "arcweb.h"

  static void foo(arcweb_url *url)
  {
    ...
  }

  static void bar(arcweb_message_fetch_request *fr)
  {
    ...
    foo(&fr->url);
    ...
  }

The call to foo() will cause a type mismatch error even though, on the
surface, the types appear to match.

Anotehr curious thing is that arcweb_url contains an os_fw not an os_f.

Tom

-- 
Tom Hughes (tom at compton.nu)
http://www.compton.nu/




More information about the oslib-team mailing list