diff --git a/src/org/ntlab/deltaViewer/CollaborationLayout.java b/src/org/ntlab/deltaViewer/CollaborationLayout.java index 30f331b..45ea389 100644 --- a/src/org/ntlab/deltaViewer/CollaborationLayout.java +++ b/src/org/ntlab/deltaViewer/CollaborationLayout.java @@ -151,6 +151,26 @@ } } } + } else if (a.getAliasType() == AliasType.FORMAL_PARAMETER) { + MethodExecution methodExec = a.getOccurrencePoint().getMethodExecution(); + if (methodExec.isStatic()) { + // For calls to a static method. + String dstClassName = methodExec.getThisClassName(); + String srcClassName = methodExec.getCallerMethodExecution().getThisClassName(); + String dstObjId = methodExec.getThisObjId() + ":" + dstClassName; + String srcObjId = null; + if (!methodExec.getCallerMethodExecution().isStatic()) { + srcObjId = methodExec.getCallerMethodExecution().getThisObjId(); + } else { + srcObjId = methodExec.getCallerMethodExecution().getThisObjId() + ":" + srcClassName; + } + Reference r = new Reference(srcObjId, dstObjId, srcClassName, dstClassName); + idx = references.indexOf(r); + if (idx < 0) { + references.add(r); + idx = references.indexOf(r); + } + } } if (idx >= 0) { Reference r = references.get(idx);