I've been working on an old project and am seeing an old problem and a new
one. The old problem is the:

"(in cleanup) Can't call method "FETCH" on an undefined value..."

message on program exit. Rob thought he had this one pinned down, but it
seems there's still a problem somewhere. It goes away as usual when I put
the:

undef $mw

statement after exiting the Dialog phase.

The new problem is with the new UserData method. I tried saving a hash
reference, but am getting this error:

Can't use string ("1") as a HASH ref while "strict refs" in use...

on use of the expression

$mw->tbTab->UserData()->{key}

The same expression works OK in a trivial example:

===============================================

#!perl -w
use Win32();
use Win32::GUI 1.05 ();

my $mw = new Win32::GUI::Window(-name => "mw");
$mw->AddTabStrip(-name  => "tbTab");

$mw->tbTab->UserData(5);
Win32::MsgBox($mw->tbTab->UserData());

$mw->tbTab->UserData("String");
Win32::MsgBox($mw->tbTab->UserData());

my $hashref = { key => "value" };
$mw->tbTab->UserData($hashref);
Win32::MsgBox($mw->tbTab->UserData()->{key});

================================================

I also saw the message:

"userData ref count not 1 during destruction - please report this..."

at one point (but am having trouble reproducing that one).

I am using version 1.05 of the module. I know the next request will be to
provide a minimal example demonstrating the problems, but this program is a
labour of love and is almost 4000 lines long! I can work around both
problems and am only reporting them for the record as it was requested. Then
again, I don't mind sending a copy of the program if anybody wants to look
into it.

Glenn


Reply via email to