Comment 3 for bug 355710

Revision history for this message
jeff.apple (jeff-apple) wrote :

From Bhaskar, the diff and a little explanation. NOTE the comments at the bottom about wrapping calls.

$ diff /tmp/XPDR.m XPDR.m
2c2
< ;;8.0;KERNEL;**1,2,44,393**;Jul 10, 1995;Build 12
---
> ;;8.0;KERNEL;**1,2,44**;Jul 10, 1995
21c21
< .S XPDJ=XPDI D:$D(^$R(XPDJ)) F S XPDJ=$O(^$R(XPDJ)) Q:XPDJ=""!($P(XPDJ,XPDI)]"") D
---
> .D SILENT^%RSEL("*") S XPDJ=XPDI D:$D(%ZR(XPDJ)) F S XPDJ=$O(%ZR(XPDJ)) Q:XPDJ=""!($P(XPDJ,XPDI)]"") D
34c34
< W !,"I will delete all local entries in the Routine File in which",!,"the Routine no longer exist on this system!",!
---
> W !,"I will delete all entries in the Routine File in which",!,"the Routine no longer exist on this system!",!
41d40
< W !,"Routines listed as National will not be deleted!"
43c42
< F S DA=$O(^DIC(9.8,DA)) Q:'DA S Y=$G(^(DA,0)) I "R"=$P(Y,U,2),$G(^DIC(9.8,DA,6))<2,$T(^@$P(Y,U))="" D ^DIK
---
> F S DA=$O(^DIC(9.8,DA)) Q:'DA S Y=$G(^(DA,0)) I $P(Y,U,2)="R",$T(^@$P(Y,U))="" D ^DIK

Notice the replacement of the use of the SSVN ^$R() with a call to SILENT^%RSEL(). I erred in my report that the XPDR I submitted would work on other MUMPS systems - in actuality, usage of ^$R() and SILENT^%RSEL would have to be wrapped.