plugins/perl/perl.c

changeset 6526
c6c3f10519ab
parent 6525
2e52a3662799
child 6527
d1236a523428
equal deleted inserted replaced
6525:2e52a3662799 6526:c6c3f10519ab
78 78
79 #include "internal.h" 79 #include "internal.h"
80 #include "debug.h" 80 #include "debug.h"
81 #include "plugin.h" 81 #include "plugin.h"
82 82
83 #include "perl-common.h"
83 #include "perl-handlers.h" 84 #include "perl-handlers.h"
84 85
85 #define PERL_PLUGIN_ID "core-perl" 86 #define PERL_PLUGIN_ID "core-perl"
86 87
87 typedef struct 88 typedef struct
313 314
314 dSP; 315 dSP;
315 ENTER; 316 ENTER;
316 SAVETMPS; 317 SAVETMPS;
317 PUSHMARK(SP); 318 PUSHMARK(SP);
318 XPUSHs(gaim_perl_ref_object(plugin)); 319 XPUSHs(sv_2mortal(gaim_perl_bless_object(plugin, "Gaim::Plugin")));
319 PUTBACK; 320 PUTBACK;
320 321
321 perl_call_pv(gps->load_sub, G_NOARGS | G_EVAL | G_SCALAR); 322 perl_call_pv(gps->load_sub, G_NOARGS | G_EVAL | G_SCALAR);
322 SPAGAIN; 323 SPAGAIN;
323 324
348 349
349 dSP; 350 dSP;
350 ENTER; 351 ENTER;
351 SAVETMPS; 352 SAVETMPS;
352 PUSHMARK(SP); 353 PUSHMARK(SP);
353 XPUSHs(gaim_perl_ref_object(plugin)); 354 XPUSHs(sv_2mortal(gaim_perl_bless_object(plugin, "Gaim::Plugin")));
354 PUTBACK; 355 PUTBACK;
355 356
356 perl_call_pv(gps->unload_sub, G_NOARGS | G_EVAL | G_SCALAR); 357 perl_call_pv(gps->unload_sub, G_NOARGS | G_EVAL | G_SCALAR);
357 SPAGAIN; 358 SPAGAIN;
358 359

mercurial