duplicate DESTROY
authorLarry Wall <lwall@scalpel.netlabs.com>
Wed, 11 Jan 1995 19:01:09 +0000 (11:01 -0800)
committerAndy Dougherty <doughera@lafcol.lafayette.edu>
Wed, 11 Jan 1995 19:01:09 +0000 (19:01 +0000)
commitd23b30860e3e4c1bd7e12ed5a35d1b90e7fa214c
treece09f650adcc4f1aa293310308802d67274ef1e2
parentecfc54246c2a6f42dc95b17a964a6048192067d2
duplicate DESTROY

In order to fix the duplicate DESTROY bug, I need to remove [the
modified] lines from sv_setsv.

Basically, copying an object shouldn't produce another object without an
explicit blessing.  I'm not sure if this will break anything.  If Ilya
and anyone else so inclined would apply this patch and see if it breaks
anything related to overloading (or anything else object-oriented), I'd
be much obliged.

By the way, here's a test script for the duplicate DESTROY.  You'll note
that it prints DESTROYED twice, once for , and once for .  I don't
think an object should be considered an object unless viewed through
a reference.  When accessed directly it should behave as a builtin type.

#!./perl

 = new main;
 = '';

sub new {
    my ;
    local /tmp/ssh-vaEzm16429/agent.16429 = bless $a;
    local  = ;      # Bogusly makes  an object.
    /tmp/ssh-vaEzm16429/agent.16429;
}

sub DESTROY {
    print "DESTROYED\n";
}

Larry
sv.c