Skip to content

Commit 23508a8

Browse files
fixed race condition for setCourse() at startup
1 parent 1722534 commit 23508a8

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

js/tracker.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -753,7 +753,7 @@ function updateVehicleInfo(vcallsign, newPosition) {
753753
vehicle.marker.setPosition(latlng);
754754
vehicle.marker.setZIndex(((vehicle.vehicle_type=="car")? Z_CAR : Z_PAYLOAD) + zIndex);
755755

756-
if(!!vehicle.marker.setCourse) vehicle.marker.setCourse(('gps_heading' in vehicle.curr_position) ? parseInt(vehicle.curr_position.gps_heading) : 90);
756+
if(!!vehicle.marker.setCourse) vehicle.marker.setCourse((vehicle.curr_position.gps_heading !== "") ? parseInt(vehicle.curr_position.gps_heading) : 90);
757757

758758
// update horizon circles and icon
759759
if(vehicle.vehicle_type == "balloon") {
@@ -787,9 +787,9 @@ function updateVehicleInfo(vcallsign, newPosition) {
787787
vehicle.marker.setMode("landed");
788788
vehicle.marker.shadow.setVisible(false);
789789
vehicle.horizon_circle.setVisible(false);
790-
vehicle.horizon_circle.label.setVisible(false);
790+
vehicle.horizon_circle.label.set('visible', false);
791791
vehicle.subhorizon_circle.setVisible(false);
792-
vehicle.subhorizon_circle.label.setVisible(false);
792+
vehicle.subhorizon_circle.label.set('visible', false);
793793

794794
} else if(vehicle.ascent_rate > -3.0 ||
795795
vcallsign == "wb8elk2") {
@@ -1281,6 +1281,7 @@ var mapInfoBox_handle_horizon = function(event) { mapInfoBox_handle_horizons(eve
12811281

12821282
var icon_cache = {};
12831283
var marker_rotate_func = function(deg) {
1284+
this.rotated = true;
12841285
deg -= 90;
12851286
deg += (deg < 0) ? 360 : 0;
12861287

@@ -1309,6 +1310,7 @@ var marker_rotate_func = function(deg) {
13091310

13101311
var marker_rotate_setup = function(marker, image_src) {
13111312
marker.setCourse = marker_rotate_func;
1313+
marker.rotated = false;
13121314
if(image_src in icon_cache) {
13131315
marker.iconImg = icon_cache[image_src];
13141316
marker.setCourse(90);
@@ -1318,7 +1320,7 @@ var marker_rotate_setup = function(marker, image_src) {
13181320
marker.iconImg = new Image();
13191321
icon_cache[image_src] = marker.iconImg;
13201322
marker.iconImg.onload = function() {
1321-
marker.setCourse(90);
1323+
if(!marker.rotated) marker.setCourse(90);
13221324
marker.setPosition(marker.getPosition());
13231325
};
13241326
marker.iconImg.src = image_src;

0 commit comments

Comments
 (0)