iOS: window de información del marcador dynamic

Estoy intentando cargar dinámicamente una image en una window de información. El problema es que SDWebImage no se completa nunca. Sin embargo, una vez que hago clic en el marcador nuevamente, se muestra la image y se completa, pero nunca en la primera vez. Mi logging de "ejecución" se muestra en la primera vez, así que sé que el código se llama, pero nunca aparece en la primera ejecución a less que la image se almacene en caching y, en ese caso, aparecerá en el segundo marcador.

Nota al margen: estoy almacenando el enlace a la image en fragment ya que no tengo otro uso para ello.

¿Alguna idea de por qué SDWebImage no se completa? ¿O hay un enfoque mejor para esto que cualquier persona pueda pensar?

Lo último que veo debajo de los bloques en la documentation dice lo siguiente, que parece encajar, pero no veo cómo cancelo la request de todos modos para causar este comportamiento.

Nota: ni su éxito ni el locking de fallas serán llamadas si su request de image se cancela antes de completarse.

bool tapped = NO; -(BOOL) mapView:(GMSMapView *) mapVieW didTapMarker:(GMSMarker *)marker{ tapped=YES; [mapVieW setSelectedMarker:marker]; return YES; } - (UIView *)mapView:(GMSMapView *)mapVieW markerInfoWindow:(GMSMarker *)marker{ if([marker.snippet isEqualToString:@""] || [marker.snippet isEqualToString:nil]){ //no image tapped = NO; //code here return view; }else{ //image //code for custom view which is unimportant if(tapped){ NSLog(@"run"); [image setImageWithURL:[NSURL URLWithString:[NSString stringWithFormat:@"%@/%@", URL_PREFIX, marker.snippet]] placeholderImage:[UIImage imageNamed:@"you"] completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType) { NSLog(@"complete"); tapped=NO; [mapView setSelectedMarker:nil]; [mapView setSelectedMarker:marker]; }]; } return view; } }