[Win32utils-devel] Help with win32/api, windows-api

Heesob Park phasis at gmail.com
Fri Sep 28 09:37:17 EDT 2007


Hi,

2007/9/28, Daniel Berger <djberg96 at gmail.com>:
>
> Hi all,
>
> I must have been testing windows-pr with an old version of windows-api,
> because now when I run 'rake test' for windows-pr I get this:
>
> C:\Documents and Settings\djberge\workspace\windows-pr>rake test
> C:0:Warning: require_gem is obsolete.  Use gem instead.
> (in C:/Documents and Settings/djberge/workspace/windows-pr)
> C:/ruby/lib/ruby/site_ruby/1.8/windows/api.rb:288: warning: instance
> variable @boolean not initialized
> C:/ruby/lib/ruby/1.8/openssl/buffering.rb:98: [BUG] Segmentation fault
> ruby 1.8.5 (2006-08-25) [i386-mswin32]
>
>
> This application has requested the Runtime to terminate it in an unusual
> way.
> Please contact the application's support team for more information.
> rake aborted!
> Command failed with status (3): [C:/ruby/bin/ruby -w
> -Ilib;lib;lib/windows ...]
>
> (See full trace by running task with --trace)
>
> The warning is bizarre. How can @boolean be uninitialized? The line
> number for the segfault it baffling.
>
> If I revert back to using an older version of windows-api (that uses the
> stdlib Win32API) everything works fine. We seemed to have messed up
> something in win32/api, but I couldn't tell you what.
>
> Help please!!!



The culprit is the pointer as always.

typedef struct {
    HANDLE library;
    FARPROC function;
    int return_type;
    int prototype[];
} Win32API;

in api.c should be

 typedef struct {
    HANDLE library;
    FARPROC function;
    int return_type;
    int prototype[16];
} Win32API;

Regards,

Park Heesob
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/win32utils-devel/attachments/20070928/3fc84fca/attachment.html 


More information about the win32utils-devel mailing list