Mercurial > pidgin
diff libgaim/plugins/perl/common/Request.xs @ 14364:338ac096e322
[gaim-migrate @ 17070]
Disabled GTK+ components of the Perl plugin (we'll no longer support gtk-perl prefs frames until this is refactored into a gtkgaim plugin somehow).
Fix gaim_util_fetch_url and plug some leaks.
I haven't successfully tested gaim_util_fetch_url from perl yet - it doesn't seem to actually pass the retrieved text to the plugin sub correctly yet.
The syntax for calling gaim_util_fetch_url() from perl is also funky and should be made more consistent to the C function.
committer: Tailor Script <tailor@pidgin.im>
author | Daniel Atallah <daniel.atallah@gmail.com> |
---|---|
date | Mon, 28 Aug 2006 20:27:03 +0000 |
parents | 60b1bc8dbf37 |
children |
line wrap: on
line diff
--- a/libgaim/plugins/perl/common/Request.xs Mon Aug 28 06:15:21 2006 +0000 +++ b/libgaim/plugins/perl/common/Request.xs Mon Aug 28 20:27:03 2006 +0000 @@ -46,6 +46,10 @@ PUTBACK; FREETMPS; LEAVE; + + g_free(gpr->ok_cb); + g_free(gpr->cancel_cb); + g_free(gpr); } static void @@ -67,6 +71,10 @@ PUTBACK; FREETMPS; LEAVE; + + g_free(gpr->ok_cb); + g_free(gpr->cancel_cb); + g_free(gpr); } MODULE = Gaim::Request PACKAGE = Gaim::Request PREFIX = gaim_request_ @@ -89,14 +97,14 @@ CODE: GaimPerlRequestData *gpr; STRLEN len; - char *basename, *package; + char *basename; basename = g_path_get_basename(handle->path); gaim_perl_normalize_script_name(basename); - package = g_strdup_printf("Gaim::Script::%s", basename); gpr = g_new(GaimPerlRequestData, 1); - gpr->ok_cb = g_strdup_printf("%s::%s", package, SvPV(ok_cb, len)); - gpr->cancel_cb = g_strdup_printf("%s::%s", package, SvPV(cancel_cb, len)); + gpr->ok_cb = g_strdup_printf("Gaim::Script::%s::%s", basename, SvPV(ok_cb, len)); + gpr->cancel_cb = g_strdup_printf("Gaim::Script::%s::%s", basename, SvPV(cancel_cb, len)); + g_free(basename); RETVAL = gaim_request_input(handle, title, primary, secondary, default_value, multiline, masked, hint, ok_text, G_CALLBACK(gaim_perl_request_ok_cb), cancel_text, G_CALLBACK(gaim_perl_request_cancel_cb), gpr); OUTPUT: @@ -113,14 +121,14 @@ CODE: GaimPerlRequestData *gpr; STRLEN len; - char *basename, *package; + char *basename; basename = g_path_get_basename(handle->path); gaim_perl_normalize_script_name(basename); - package = g_strdup_printf("Gaim::Script::%s", basename); gpr = g_new(GaimPerlRequestData, 1); - gpr->ok_cb = g_strdup_printf("%s::%s", package, SvPV(ok_cb, len)); - gpr->cancel_cb = g_strdup_printf("%s::%s", package, SvPV(cancel_cb, len)); + gpr->ok_cb = g_strdup_printf("Gaim::Script::%s::%s", basename, SvPV(ok_cb, len)); + gpr->cancel_cb = g_strdup_printf("Gaim::Script::%s::%s", basename, SvPV(cancel_cb, len)); + g_free(basename); RETVAL = gaim_request_file(handle, title, filename, savedialog, G_CALLBACK(gaim_perl_request_ok_cb), G_CALLBACK(gaim_perl_request_cancel_cb), gpr); OUTPUT: @@ -140,14 +148,14 @@ CODE: GaimPerlRequestData *gpr; STRLEN len; - char *basename, *package; + char *basename; basename = g_path_get_basename(handle->path); gaim_perl_normalize_script_name(basename); - package = g_strdup_printf("Gaim::Script::%s", basename); gpr = g_new(GaimPerlRequestData, 1); - gpr->ok_cb = g_strdup_printf("%s::%s", package, SvPV(ok_cb, len)); - gpr->cancel_cb = g_strdup_printf("%s::%s", package, SvPV(cancel_cb, len)); + gpr->ok_cb = g_strdup_printf("Gaim::Script::%s::%s", basename, SvPV(ok_cb, len)); + gpr->cancel_cb = g_strdup_printf("Gaim::Script::%s::%s", basename, SvPV(cancel_cb, len)); + g_free(basename); RETVAL = gaim_request_fields(handle, title, primary, secondary, fields, ok_text, G_CALLBACK(gaim_perl_request_ok_cb), cancel_text, G_CALLBACK(gaim_perl_request_cancel_cb), gpr); OUTPUT: