Diff of /trunk/src/gps.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 287 by harbaum, Thu May 27 19:13:18 2010 UTC revision 288 by harbaum, Mon Jun 7 19:19:50 2010 UTC
# Line 630  void gps_release(gps_state_t *gps_state) Line 630  void gps_release(gps_state_t *gps_state)
630    
631  static void gps_control(gps_state_t *gps_state,  static void gps_control(gps_state_t *gps_state,
632                          gboolean enable0, gboolean enable1) {                          gboolean enable0, gboolean enable1) {
633      printf("GPS: control(stp: %d, bg: %d)\n", enable0, enable1);
634    
635    if(!gps_state->connected) {    if(!gps_state->connected) {
636      /* both "enable" signals have to be true */      /* both "enable" signals have to be true */
637      if(enable0 && enable1) {      if(enable0 && enable1) {
# Line 655  void gps_background_enable(gps_state_t * Line 657  void gps_background_enable(gps_state_t *
657    if(gps_state->backgrounded == !enable) return;    if(gps_state->backgrounded == !enable) return;
658    
659    gps_state->backgrounded = !enable;    gps_state->backgrounded = !enable;
660    gps_control(gps_state, gps_state->stopped, gps_state->backgrounded);    gps_control(gps_state, !gps_state->stopped, !gps_state->backgrounded);
661  }  }
662    
663  /* enable/disable on app request */  /* enable/disable on app request */
# Line 663  void gps_enable(gps_state_t *gps_state, Line 665  void gps_enable(gps_state_t *gps_state,
665    if(gps_state->stopped == !enable) return;    if(gps_state->stopped == !enable) return;
666    
667    gps_state->stopped = !enable;    gps_state->stopped = !enable;
668    gps_control(gps_state, gps_state->stopped, gps_state->backgrounded);    gps_control(gps_state, !gps_state->stopped, !gps_state->backgrounded);
669  }  }
670    
671  #endif // USE_LIBLOCATION  #endif // USE_LIBLOCATION

Legend:
Removed from v.287  
changed lines
  Added in v.288