comparison libpurple/plugins/perl/common/Status.xs @ 18118:ab6d2763b8d8

Re-fix the DBus list handling code by killing const GList* / const GSList* everywhere. Now we maintain a list of functions which return a GList or GSList which must not be freed. Ideally at some point this will be replaced with code that looks at the Doxygen comment for the function and honors @constreturn, which I've declared as a macro around @return that prints a @note about not modifying or freeing the returned value.
author Richard Laager <rlaager@wiktel.com>
date Sat, 16 Jun 2007 19:44:59 +0000
parents 08b9f27cf219
children 306ee626481d
comparison
equal deleted inserted replaced
18117:cd81f8f36788 18118:ab6d2763b8d8
140 140
141 void 141 void
142 purple_presence_get_statuses(presence) 142 purple_presence_get_statuses(presence)
143 Purple::Presence presence 143 Purple::Presence presence
144 PREINIT: 144 PREINIT:
145 const GList *l; 145 GList *l;
146 PPCODE: 146 PPCODE:
147 for (l = purple_presence_get_statuses(presence); l != NULL; l = l->next) { 147 for (l = purple_presence_get_statuses(presence); l != NULL; l = l->next) {
148 XPUSHs(sv_2mortal(purple_perl_bless_object(l->data, "Purple::Status"))); 148 XPUSHs(sv_2mortal(purple_perl_bless_object(l->data, "Purple::Status")));
149 } 149 }
150 150
390 390
391 void 391 void
392 purple_status_type_get_attrs(status_type) 392 purple_status_type_get_attrs(status_type)
393 Purple::StatusType status_type 393 Purple::StatusType status_type
394 PREINIT: 394 PREINIT:
395 const GList *l; 395 GList *l;
396 PPCODE: 396 PPCODE:
397 for (l = purple_status_type_get_attrs(status_type); l != NULL; l = l->next) { 397 for (l = purple_status_type_get_attrs(status_type); l != NULL; l = l->next) {
398 XPUSHs(sv_2mortal(purple_perl_bless_object(l->data, "Purple::StatusAttr"))); 398 XPUSHs(sv_2mortal(purple_perl_bless_object(l->data, "Purple::StatusAttr")));
399 } 399 }
400 400