Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit fd138de

Browse files
authored
Merge pull request #1129 from martin-frbg/issue1128
Avoid memory corruption with non-finite inputs in ?GEEV
2 parents 8b24458 + d724843 commit fd138de

File tree

4 files changed

+4
-4
lines changed

4 files changed

+4
-4
lines changed

‎SRC/cgeev.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,7 @@ SUBROUTINE CGEEV( JOBVL, JOBVR, N, A, LDA, W, VL, LDVL, VR,
496496
* Undo scaling if necessary
497497
*
498498
50 CONTINUE
499-
IF( SCALEA ) THEN
499+
IF( SCALEA .AND. INFO.GE.0) THEN
500500
CALL CLASCL( 'G', 0, 0, CSCALE, ANRM, N-INFO, 1,
501501
$ W( INFO+1 ),
502502
$ MAX( N-INFO, 1 ), IERR )

‎SRC/dgeev.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@ SUBROUTINE DGEEV( JOBVL, JOBVR, N, A, LDA, WR, WI, VL, LDVL,
517517
* Undo scaling if necessary
518518
*
519519
50 CONTINUE
520-
IF( SCALEA ) THEN
520+
IF( SCALEA .AND. INFO.GE.0) THEN
521521
CALL DLASCL( 'G', 0, 0, CSCALE, ANRM, N-INFO, 1,
522522
$ WR( INFO+1 ),
523523
$ MAX( N-INFO, 1 ), IERR )

‎SRC/sgeev.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,7 @@ SUBROUTINE SGEEV( JOBVL, JOBVR, N, A, LDA, WR, WI, VL, LDVL,
519519
* Undo scaling if necessary
520520
*
521521
50 CONTINUE
522-
IF( SCALEA ) THEN
522+
IF( SCALEA .AND. INFO.GE.0) THEN
523523
CALL SLASCL( 'G', 0, 0, CSCALE, ANRM, N-INFO, 1,
524524
$ WR( INFO+1 ),
525525
$ MAX( N-INFO, 1 ), IERR )

‎SRC/zgeev.f

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -493,7 +493,7 @@ SUBROUTINE ZGEEV( JOBVL, JOBVR, N, A, LDA, W, VL, LDVL, VR,
493493
* Undo scaling if necessary
494494
*
495495
50 CONTINUE
496-
IF( SCALEA ) THEN
496+
IF( SCALEA .AND.INFO.GE.0) THEN
497497
CALL ZLASCL( 'G', 0, 0, CSCALE, ANRM, N-INFO, 1,
498498
$ W( INFO+1 ),
499499
$ MAX( N-INFO, 1 ), IERR )

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /