Skip to content

Commit 4c0445a

Browse files
authored
Avoid out of bounds accesses in SCAL when INFO <0
1 parent d48a2fc commit 4c0445a

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

lapack-netlib/SRC/sgeev.f

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -504,17 +504,17 @@ SUBROUTINE SGEEV( JOBVL, JOBVR, N, A, LDA, WR, WI, VL, LDVL, VR,
504504
* Undo scaling if necessary
505505
*
506506
50 CONTINUE
507-
IF( SCALEA ) THEN
507+
IF( SCALEA .AND. INFO.GT.0) THEN
508508
CALL SLASCL( 'G', 0, 0, CSCALE, ANRM, N-INFO, 1, WR( INFO+1 ),
509509
$ MAX( N-INFO, 1 ), IERR )
510510
CALL SLASCL( 'G', 0, 0, CSCALE, ANRM, N-INFO, 1, WI( INFO+1 ),
511511
$ MAX( N-INFO, 1 ), IERR )
512-
IF( INFO.GT.0 ) THEN
512+
513513
CALL SLASCL( 'G', 0, 0, CSCALE, ANRM, ILO-1, 1, WR, N,
514514
$ IERR )
515515
CALL SLASCL( 'G', 0, 0, CSCALE, ANRM, ILO-1, 1, WI, N,
516516
$ IERR )
517-
END IF
517+
518518
END IF
519519
*
520520
WORK( 1 ) = SROUNDUP_LWORK(MAXWRK)

0 commit comments

Comments
 (0)