diff --git a/src/org/ntlab/deltaExtractor/DeltaExtractorJSON.java b/src/org/ntlab/deltaExtractor/DeltaExtractorJSON.java index d0f63f1..c850afe 100644 --- a/src/org/ntlab/deltaExtractor/DeltaExtractorJSON.java +++ b/src/org/ntlab/deltaExtractor/DeltaExtractorJSON.java @@ -71,9 +71,12 @@ // �I�u�W�F�N�g���Ăяo���̂Ƃ��݈̂�U�폜���A�Ăяo�����̒T���𑱂���ۂɕ��������� removeList.add(thisObjectId); // ��ň�U�AthisObject ����菜�� isTrackingThis = true; // �Ăяo�����T���O�ɕ��� + // �I�u�W�F�N�g���Ăяo���̂Ƃ���1�i��3�̋t�j + aliasCollector.addAlias(new Alias(Alias.AliasType.RECEIVER, 0, childMethodExecution.getThisObjId(), tracePoint.duplicate())); + } else if (!childMethodExecution.isConstructor()) { + // �I�u�W�F�N�g�ԌĂяo���ŌĂяo���悪�R���X�g���N�^�łȂ��ꍇ��2�i��3�̋t�j + aliasCollector.addAlias(new Alias(Alias.AliasType.RECEIVER, 0, childMethodExecution.getThisObjId(), tracePoint.duplicate())); } - - aliasCollector.addAlias(new Alias(Alias.AliasType.RECEIVER, 0, childMethodExecution.getThisObjId(), tracePoint.duplicate())); } if (childMethodExecution != null) { @@ -92,6 +95,11 @@ removeList.add(childMethodExecution.getThisObjId()); existsInFields++; removeList.add(thisObjectId); // ��ň�U�AthisObject ����菜�� + if (!thisObjectId.equals(childMethodExecution.getThisObjId())) { + // �Ăяo���悪�R���X�g���N�^�ŁA�I�u�W�F�N�g�ԌĂяo���̎���3�i��1�A��2�̋t�j +// aliasList.put(childMethodExecution.getThisObjId(), new Alias(Alias.AliasType.RECEIVER, 0, childMethodExecution.getThisObjId(), tracePoint.duplicate())); + aliasList.put(childMethodExecution.getThisObjId(), new Alias(Alias.AliasType.CONSTRACTOR_INVOCATION, 0, childMethodExecution.getThisObjId(), tracePoint.duplicate())); + } } }