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