diff --git a/org.ntlab.traceCollector/src/org/ntlab/traceCollector/tracer/trace/TraceJSON.java b/org.ntlab.traceCollector/src/org/ntlab/traceCollector/tracer/trace/TraceJSON.java index 7a5037c..5161799 100644 --- a/org.ntlab.traceCollector/src/org/ntlab/traceCollector/tracer/trace/TraceJSON.java +++ b/org.ntlab.traceCollector/src/org/ntlab/traceCollector/tracer/trace/TraceJSON.java @@ -1028,7 +1028,10 @@ for (int j = 0; j < args.size(); j++) { startAliasList.add(new Alias(args.get(j).getId(), tp, (j + Alias.OCCURRENCE_EXP_FIRST_ARG))); } - startAliasList.add(new Alias(calledMe.getReturnValue().getId(), tp, Alias.OCCURRENCE_EXP_RETURN)); + ObjectReference returnValue = calledMe.getReturnValue(); + if (returnValue != null) { + startAliasList.add(new Alias(returnValue.getId(), tp, Alias.OCCURRENCE_EXP_RETURN)); + } } } return startAliasList; @@ -1046,15 +1049,15 @@ String objId = startAlias.getObjectId(); TracePoint tp = startAlias.getOccurrencePoint().duplicate(); ArrayList> resultLists = getObjectFlow(aliasLists, objId, tp, 0); - for (int i = 0; i < resultLists.size(); i++) { - ArrayList resultList = resultLists.get(i); - System.out.println("---------------------------------------------------------"); // �m�F�p - for (Alias alias : resultList) System.out.println(alias); // �m�F�p +// for (int i = 0; i < resultLists.size(); i++) { +// ArrayList resultList = resultLists.get(i); +// System.out.println("---------------------------------------------------------"); // �m�F�p +// for (Alias alias : resultList) System.out.println(alias); // �m�F�p // int lastAliasOccurrenceEXP = resultList.get(resultList.size() - 1).getOccurrenceExp(); // if (lastAliasOccurrenceEXP != Alias.OCCURRENCE_EXP_RETURN) { // resultLists.remove(resultList); // �����̃G�C���A�X���z�񐶐���R���X�g���N�^�Ăяo���ł͂Ȃ����X�g���폜���� // } - } +// } return resultLists; } @@ -1099,7 +1102,6 @@ // �߂�l�ɃG�C���A�X�̃I�u�W�F�N�gID����v�����ꍇ aliasList.add(new Alias(objId, tp.duplicate(), Alias.OCCURRENCE_EXP_RETURN)); if (calledMethodExecution.isConstructor()) { - System.out.println("return (Constructor)"); return aliasLists; // �R���X�g���N�^�Ăяo���ӏ��̓G�C���A�X�̋N���Ȃ̂ł���ȑO�ɂ͂����Ȃ��͂� } TracePoint exitTp = calledMethodExecution.getExitPoint(); // �Ăяo�����\�b�h���s�̍ŏI�X�e�[�g�����g���w��tp���擾