Hi -

I was wondering if anyone else had seen a problem with VCard, with a
symptom of:
ERROR DJabberd.Connection.ClientIn             1 disconnected 
DJabberd::Connection::ClientIn=HASH(0x39c22f8) because: Modification of a 
read-only value attempted at 
/home/piers/code/DJabberd/djabberd/DJabberd-VCard/lib/DJabberd/Plugin/VCard.pm 
line 39.

In order to fix this (and related) I've had to change the bless to
downbless for nodes that are currently blessed as DJabberd::IQ:
Index: djabberd/DJabberd-VCard/lib/DJabberd/Plugin/VCard.pm
===================================================================
--- djabberd/DJabberd-VCard/lib/DJabberd/Plugin/VCard.pm (revision 864)
+++ djabberd/DJabberd-VCard/lib/DJabberd/Plugin/VCard.pm        (working copy)
@@ -36,12 +36,12 @@
             }
         }
         if ($iq->signature eq 'get-{vcard-temp}vCard') {
-            bless $iq, $self->iq_class;
+            $self->iq_class->downbless($iq);
             $self->get_vcard($vh, $iq);
             $cb->stop_chain;
             return;
         } elsif ($iq->signature eq 'set-{vcard-temp}vCard') {
-            bless $iq, $self->iq_class;
+            $self->iq_class->downbless($iq);
             $self->set_vcard($vh, $iq);
             $cb->stop_chain;
             return;


Any ideas?

Cheers,
Piers Harding.




-- 
Home - http://www.piersharding.com
xmpp:pi...@ompka.net

Attachment: pgp8hyqnJPCQ2.pgp
Description: PGP signature

Reply via email to