Changeset 3227
- Timestamp:
- 01/09/08 11:51:11
- Files:
-
- trunk/ChangeLog (modified) (1 diff)
- trunk/libtinymail-maemo/tny-maemo-conic-device.c (modified) (25 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/ChangeLog
r3226 r3227 1 2008-01-09 Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com> 2 3 * small fixes / cleanups for tny-maemo-conic-device 4 1 5 2008-01-08 Sergio Villar Senin <svillar@igalia.com> 2 6 trunk/libtinymail-maemo/tny-maemo-conic-device.c
r3226 r3227 80 80 conic_emit_status_idle (gpointer user_data) 81 81 { 82 EmitStatusInfo *info = (EmitStatusInfo *) user_data; 82 EmitStatusInfo *info; 83 84 g_return_val_if_fail (user_data, FALSE); 85 86 info = (EmitStatusInfo *) user_data; 83 87 84 88 /* We lock the gdk thread because tinymail wants implementations to do … … 97 101 conic_emit_status_destroy (gpointer user_data) 98 102 { 99 EmitStatusInfo *info = (EmitStatusInfo *) user_data; 100 g_object_unref (info->self); 103 EmitStatusInfo *info; 104 105 g_return_if_fail (user_data); 106 107 info = (EmitStatusInfo *) user_data; 108 109 if (G_IS_OBJECT(info->self)) 110 g_object_unref (info->self); 111 101 112 g_slice_free (EmitStatusInfo, info); 102 return;103 113 } 104 114 … … 106 116 conic_emit_status (TnyDevice *self, gboolean status) 107 117 { 118 EmitStatusInfo *info; 119 guint time = 1000; 120 121 g_return_if_fail (TNY_IS_DEVICE(self)); 122 108 123 /* Emit it in an idle handler: */ 109 EmitStatusInfo *info = g_slice_new (EmitStatusInfo); 110 guint time = 1000; 111 124 info = g_slice_new (EmitStatusInfo); 125 112 126 info->self = g_object_ref (self); 113 127 info->status = status; … … 118 132 g_timeout_add_full (G_PRIORITY_DEFAULT, time, conic_emit_status_idle, 119 133 info, conic_emit_status_destroy); 120 121 return;122 134 } 123 135 … … 130 142 131 143 g_return_if_fail (TNY_IS_DEVICE(device)); 144 132 145 self = TNY_MAEMO_CONIC_DEVICE (device); 133 146 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (self); … … 138 151 if (status_before != tny_maemo_conic_device_is_online (device)) 139 152 conic_emit_status (device, !status_before); 140 141 return;142 153 } 143 154 … … 145 156 handle_connect (TnyMaemoConicDevice *self, int con_err, int con_state) 146 157 { 147 TnyMaemoConicDevicePriv *priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (self); 158 TnyMaemoConicDevicePriv *priv; 159 160 g_return_if_fail (TNY_IS_MAEMO_CONIC_DEVICE (self)); 161 162 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (self); 148 163 149 164 if (priv->connect_slot) { … … 189 204 g_slice_free (ConnectInfo, info); 190 205 } 191 192 return;193 206 } 194 207 … … 199 212 } HandleConnInfo; 200 213 201 static gboolean 214 static gboolean /* FIXME: this function will always return FALSE, is that correct? */ 202 215 handle_con_idle (gpointer data) 203 216 { 204 HandleConnInfo *info = (HandleConnInfo *) data; 217 HandleConnInfo *info; 218 219 g_return_val_if_fail (data, FALSE); 220 221 info = (HandleConnInfo *) data; 205 222 handle_connect (info->self, info->con_err, info->con_state); 223 206 224 return FALSE; 207 225 } … … 209 227 static void 210 228 handle_con_idle_destroy (gpointer data) 211 { 212 HandleConnInfo *info = (HandleConnInfo *) data; 213 g_object_unref (info->self); 229 { 230 HandleConnInfo *info; 231 232 g_return_if_fail (data); 233 234 info = (HandleConnInfo *) data; 235 236 if (G_IS_OBJECT(info->self)) 237 g_object_unref (info->self); 238 214 239 g_slice_free (HandleConnInfo, data); 215 240 } … … 219 244 on_connection_event (ConIcConnection *cnx, ConIcConnectionEvent *event, gpointer user_data) 220 245 { 221 TnyMaemoConicDevice *device = TNY_MAEMO_CONIC_DEVICE (user_data);222 TnyMaemoConicDevicePriv *priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (device);246 TnyMaemoConicDevice *device; 247 TnyMaemoConicDevicePriv *priv; 223 248 gboolean is_online = FALSE; 224 249 gboolean emit = FALSE; 225 250 HandleConnInfo *iinfo; 226 251 int con_err, con_state; 252 253 /* we don't need cnx in this function */ 254 g_return_if_fail (user_data && TNY_MAEMO_IS_CONIC_DEVICE(user_data)); 255 g_return_if_fail (event && CON_IC_IS_CONNECTION_EVENT(event)); 256 257 device = TNY_MAEMO_CONIC_DEVICE (user_data); 258 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (device); 227 259 228 260 /* Don't emit nor make any changes in case of forced state */ … … 252 284 switch (con_state) { 253 285 case CON_IC_STATUS_CONNECTED: 254 if (priv->iap) 255 g_free (priv->iap); 286 g_free (priv->iap); 256 287 priv->iap = g_strdup (con_ic_event_get_iap_id ((ConIcEvent*)(event))); 257 288 if (!priv->is_online) … … 263 294 264 295 case CON_IC_STATUS_DISCONNECTED: 296 g_free (priv->iap); 265 297 priv->iap = NULL; 266 298 if (priv->is_online) … … 298 330 if (emit) 299 331 conic_emit_status (TNY_DEVICE (device), is_online); 300 301 return;302 332 } 303 333 … … 337 367 info->callback = callback; 338 368 info->user_data = user_data; 339 info->iap_id = g_strdup (iap_id);369 info->iap_id = iap_id ? g_strdup (iap_id) : NULL; /* iap_id can be NULL */ 340 370 341 371 priv->connect_slot = info; … … 369 399 g_slice_free (ConnectInfo, info); 370 400 } 371 372 return;373 401 } 374 402 … … 389 417 TnyMaemoConicDevicePriv *priv = NULL; 390 418 391 g_return_val_if_fail ( TNY_IS_MAEMO_CONIC_DEVICE(self), FALSE);419 g_return_val_if_fail (self && TNY_IS_MAEMO_CONIC_DEVICE(self), FALSE); 392 420 393 421 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (self); … … 449 477 tny_maemo_conic_device_get_iap (TnyMaemoConicDevice *self, const gchar *iap_id) 450 478 { 451 TnyMaemoConicDevicePriv *priv = NULL;479 TnyMaemoConicDevicePriv *priv; 452 480 g_return_val_if_fail (TNY_IS_MAEMO_CONIC_DEVICE(self), NULL); 453 481 g_return_val_if_fail (iap_id, NULL); 482 454 483 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (self); 455 484 g_return_val_if_fail (priv->cnx, NULL); … … 477 506 tny_maemo_conic_device_get_iap_list (TnyMaemoConicDevice *self) 478 507 { 479 TnyMaemoConicDevicePriv *priv = NULL; 508 TnyMaemoConicDevicePriv *priv; 509 510 g_return_val_if_fail (TNY_IS_MAEMO_CONIC_DEVICE(self), NULL); 480 511 481 512 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (self); … … 496 527 tny_maemo_conic_device_free_iap_list (TnyMaemoConicDevice *self, GSList* cnx_list) 497 528 { 498 GSList *cur = cnx_list; 499 while (cur) { 500 g_object_unref (G_OBJECT(cur->data)); 501 cur = g_slist_next (cur); 502 } 529 g_slist_foreach (cnx_list, (GFunc)g_object_unref, NULL); 503 530 g_slist_free (cnx_list); 504 return;505 531 } 506 532 … … 512 538 TnyMaemoConicDevicePriv *priv; 513 539 gboolean already_online = FALSE; 540 514 541 g_return_if_fail (TNY_IS_DEVICE(device)); 542 515 543 self = TNY_MAEMO_CONIC_DEVICE (device); 516 544 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (self); 517 545 518 546 already_online = tny_maemo_conic_device_is_online (device); 519 547 … … 535 563 536 564 g_return_if_fail (TNY_IS_DEVICE(device)); 565 537 566 self = TNY_MAEMO_CONIC_DEVICE (device); 538 567 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (self); … … 545 574 if (!already_offline) 546 575 conic_emit_status (device, FALSE); 547 548 return;549 576 } 550 577 … … 601 628 tny_maemo_conic_device_new (void) 602 629 { 603 TnyMaemoConicDevice *self = g_object_new (TNY_TYPE_MAEMO_CONIC_DEVICE, NULL); 604 605 return TNY_DEVICE (self); 630 return TNY_DEVICE(g_object_new (TNY_TYPE_MAEMO_CONIC_DEVICE, NULL)); 606 631 } 607 632 … … 609 634 tny_maemo_conic_device_finalize (GObject *obj) 610 635 { 611 TnyMaemoConicDevicePriv *priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (obj); 612 636 TnyMaemoConicDevicePriv *priv; 637 638 g_return_if_fail (obj && G_IS_OBJECT(obj)); 639 640 priv = TNY_MAEMO_CONIC_DEVICE_GET_PRIVATE (obj); 613 641 g_signal_handler_disconnect (obj, priv->signal1); 614 642
