Merge jv
authorMerge Script
Fri, 13 May 2016 06:50:26 +0200
branchjv
changeset 3679 9dfbe91050ff
parent 3676 5fdc90d84463 (current diff)
parent 3678 393a135d1c66 (diff)
child 3682 d021a3aa3599
Merge
ApplicationModel.st
--- a/ApplicationModel.st	Wed May 11 07:02:25 2016 +0200
+++ b/ApplicationModel.st	Fri May 13 06:50:26 2016 +0200
@@ -748,22 +748,22 @@
     specOrSpecArray isCollection ifFalse:[^ specOrSpecArray].
 
     "/ app returns a literal array
-    specOrSpecArray class missingClassInLiteralArrayErrorSignal
-	handle:[:ex |
-	    |clsInMyNamespace className|
-
-	    className := ex parameter.
-	    className isSymbol ifTrue:[
-		"retry with my nameSpace"
-		clsInMyNamespace := self nameSpace at:className.
-		clsInMyNamespace notNil ifTrue:[ ex proceedWith:clsInMyNamespace].
-	    ].
-	    self warn:ex description.
-	    ex proceedWith:nil
-	]
-	do:[
-	    ^ UISpecification from:specOrSpecArray
-	]
+    MissingClassInLiteralArrayErrorSignal
+        handle:[:ex |
+            |clsInMyNamespace className|
+
+            className := ex missingClassName.
+            className isSymbol ifTrue:[
+                "retry with my nameSpace"
+                clsInMyNamespace := self nameSpace at:className.
+                clsInMyNamespace notNil ifTrue:[ ex proceedWith:clsInMyNamespace].
+            ].
+            self warn:ex description.
+            ex proceedWith:nil
+        ]
+        do:[
+            ^ UISpecification from:specOrSpecArray
+        ]
 
     "Modified: / 25-07-2010 / 10:36:53 / cg"
 !
@@ -3511,10 +3511,19 @@
      Can be refefined in subclasses which want to provide per-instance specs."
 
     aSelectorOrSpec isSymbol ifFalse:[
-	(aSelectorOrSpec isKindOf:UISpecification) ifTrue:[^ aSelectorOrSpec].
+        (aSelectorOrSpec isKindOf:UISpecification) ifTrue:[^ aSelectorOrSpec].
     ].
-    ^ self class interfaceSpecFor:aSelectorOrSpec
-
+    UnhandledAttributeInLiteralArrayErrorSignal handle:[:ex |
+        "/ that is to support debugging - to easily find the bad spec
+        Transcript showCR:'%1 [warning]: Error in spec (%2):' withCRs 
+                                with:self class name 
+                                with:aSelectorOrSpec.
+        Transcript showCR:ex description. 
+        ex proceed.
+    ] do:[    
+        ^ self class interfaceSpecFor:aSelectorOrSpec
+    ].
+    
     "Created: / 25-01-1998 / 19:45:12 / cg"
     "Modified: / 14-01-2008 / 17:54:29 / cg"
 !