File tree 2 files changed +11
-5
lines changed
2 files changed +11
-5
lines changed Original file line number Diff line number Diff line change @@ -542,12 +542,18 @@ exports.drawData = function(gd) {
542
542
var i ;
543
543
544
544
// remove old colorbars explicitly
545
- for ( i = 0 ; i < calcdata . length ; i ++ ) {
546
- var trace = calcdata [ i ] [ 0 ] . trace ;
547
- if ( trace . visible !== true || ! trace . _module . colorbar ) {
548
- fullLayout . _infolayer . select ( '.cb' + trace . uid ) . remove ( ) ;
545
+ if ( calcdata && calcdata . length ) {
546
+ for ( i = 0 ; i < calcdata . length ; i ++ ) {
547
+ var trace = calcdata [ i ] [ 0 ] . trace ;
548
+ if ( trace . visible !== true || ! trace . _module . colorbar ) {
549
+ fullLayout . _infolayer . select ( '.cb' + trace . uid ) . remove ( ) ;
550
+ }
549
551
}
550
552
}
553
+ else {
554
+ // Abort / reject
555
+ return Promise . reject ( 'drawData aborting due to receiving invalid calcdata' ) ;
556
+ }
551
557
552
558
clearGlCanvases ( gd ) ;
553
559
Original file line number Diff line number Diff line change @@ -484,7 +484,7 @@ plots.supplyDefaults = function(gd, opts) {
484
484
plots . supplyDefaultsUpdateCalc = function ( oldCalcdata , newFullData ) {
485
485
for ( var i = 0 ; i < newFullData . length ; i ++ ) {
486
486
var newTrace = newFullData [ i ] ;
487
- var cd0 = oldCalcdata [ i ] [ 0 ] ;
487
+ var cd0 = oldCalcdata && oldCalcdata [ i ] && ! oldCalcdata [ i ] [ 0 ] ;
488
488
if ( cd0 && cd0 . trace ) {
489
489
var oldTrace = cd0 . trace ;
490
490
if ( oldTrace . _hasCalcTransform ) {
You can’t perform that action at this time.
0 commit comments