comparison plugins/perl/perl-handlers.c @ 12804:86d67bd4ef24

[gaim-migrate @ 15151] I believe this fixes the "attempt to free unreferenced scalar" messages that everyone was getting and doesn't seem to break anything else. Will Thompson said it worked for him, so that's at least two of us. Let me know if this breaks things for anyone. committer: Tailor Script <tailor@pidgin.im>
author Etan Reisner <pidgin@unreliablesource.net>
date Tue, 10 Jan 2006 05:14:30 +0000
parents 050b29b7232a
children 2422097a7a5e
comparison
equal deleted inserted replaced
12803:050b29b7232a 12804:86d67bd4ef24
229 ENTER; 229 ENTER;
230 SAVETMPS; 230 SAVETMPS;
231 PUSHMARK(sp); 231 PUSHMARK(sp);
232 232
233 gaim_signal_get_values(handler->instance, handler->signal, 233 gaim_signal_get_values(handler->instance, handler->signal,
234 &ret_value, &value_count, &values); 234 &ret_value, &value_count, &values);
235 235
236 sv_args = g_new(SV *, value_count); 236 sv_args = g_new(SV *, value_count);
237 copy_args = g_new(void **, value_count); 237 copy_args = g_new(void **, value_count);
238 238
239 for (i = 0; i < value_count; i++) { 239 for (i = 0; i < value_count; i++) {
240 sv_args[i] = sv_2mortal(gaim_perl_sv_from_vargs(values[i], 240 sv_args[i] = gaim_perl_sv_from_vargs(values[i],
241 (va_list*)&args, &copy_args[i])); 241 (va_list*)&args,
242 &copy_args[i]);
242 243
243 XPUSHs(sv_args[i]); 244 XPUSHs(sv_args[i]);
244 } 245 }
245 246
246 XPUSHs((SV *)handler->data); 247 XPUSHs((SV *)handler->data);