[Desc.] table(failed, leak) api column size changed, failed check fixed, args parsing fixed.
[Issue]
\r
// user call check\r
public final static String USER_BIN_POS = "/opt/apps/"; //$NON-NLS-1$\r
- public final static int USER_CALL = 1;\r
- public final static int INTERNAL_CALL = 2;\r
+ public final static int USER_CALL = 2;\r
+ public final static int INTERNAL_CALL = 1;\r
public final static int USER_CALL_CHECK_ERROR = -1;\r
public final static String VIRTUAL_THUNK = "virtual base override";\r
\r
\r
if ((null == sl) || (!sl.isValid())\r
|| (IDECommunicator.isConnected() == false)) {\r
- createErrorPopup(AnalyzerLabels.SOURCE_NOT_EXIST);\r
+ createErrorPopup(AnalyzerLabels.IDE_NOT_LAUNCHED);\r
return;\r
}\r
\r
public static final int THREAD_API_TYPE_INTERNAL_STOP = 7;
public static final int THREAD_API_TYPE_OTHER = 8;
- /* internal log */
- public static final int INTERNAL_CALL = 1;
- public static final int USER_CALL = 2;
-
/* custom log : 13 */
public static final int CUSTOM_CHART_HANDLE = 12;
public static final int CUSTOM_CHART_TYPE = 13;
// Source tooltip
public static String SOURCE_NOT_EXIST;
-
+ public static String IDE_NOT_LAUNCHED;
// Source popup
public static String ERROR;
public static String CONFIRMATION;
public static String STOP_PROCESS_DLG_DEVICE_DISCONNECTED;
public static String TABLE_COLUMN_LIBNAME;
- public static String TABLE_COLUMN_ARGUMENT;
+ public static String TABLE_COLUMN_PARAMETERS;
public static String TABLE_COLUMN_RETURN;
-
+
static {
NLS.initializeMessages(BUNDLE_NAME, AnalyzerLabels.class);
}
#Source tooltip
SOURCE_NOT_EXIST=Source file does not exist.
+IDE_NOT_LAUNCHED=Tizen IDE is not launched.
#Source popup
ERROR=Error
STOP_PROCESS_DLG_DEVICE_DISCONNECTED=Device disconnected
TABLE_COLUMN_LIBNAME=Library
-TABLE_COLUMN_ARGUMENT=Arguments
+TABLE_COLUMN_PARAMETERS=Parameters
TABLE_COLUMN_RETURN=Return
\ No newline at end of file
WARNING_CASE_PRE_FIX=<
-WARNING_LIST_VIEW_TITLE=Warning List
+WARNING_LIST_VIEW_TITLE=Warnings
WARNING_LIST_VIEW_CATEGORY=Category
WARNING_LIST_VIEW_PID=PID
WARNING_LIST_VIEW_INDEX=\#
// check main process!!
// TODO : multi process processing
if (log instanceof ProbeCommonData) {
- if (-1 == pid) {
- pid = ((ProbeCommonData) log).getPid();
- } else {
- int p = ((ProbeCommonData) log).getPid();
- if (pid != p) {
- continue;
- }
- }
+ // if (-1 == pid) {
+ // pid = ((ProbeCommonData) log).getPid();
+ // } else {
+ // int p = ((ProbeCommonData) log).getPid();
+ // if (pid != p) {
+ // continue;
+ // }
+ // }
+
+ ProbeCommonData common = ((ProbeCommonData) log);
+ System.out.println("internal call : "
+ + common.getInternalCall() + " api : "
+ + common.getApiName());
}
int seqNum = log.getSeq();
break;
case 'd':
int iValue = ByteUtils.toInt(payload, index);
- buffer.append(AnalyzerUtil.toHexdecimal(iValue));
+ buffer.append(iValue);
index += Integer.SIZE / Byte.SIZE;
break;
case 'x':
long lValue = ByteUtils.toLong(payload, index);
- buffer.append(AnalyzerUtil.toHexdecimal(lValue));
+ buffer.append(lValue);
index += LONG_SIZE;
break;
case 'p':
SummaryLabels.FAILED_API_LIST_VIEW_INDEX,
SummaryLabels.FAILED_API_LIST_VIEW_TIME,
SummaryLabels.FAILED_API_LIST_VIEW_NAME,
- SummaryLabels.FAILED_API_LIST_VIEW_PID,
SummaryLabels.FAILED_API_LIST_VIEW_PARAMETER,
SummaryLabels.FAILED_API_LIST_VIEW_RETURN,
SummaryLabels.FAILED_API_LIST_VIEW_ERROR_CODE,
- SummaryLabels.FAILED_API_LIST_VIEW_ERROR_DESCRIPTION };
- protected int[] columnSizes = { 25, 60, 45,45, 125, 70, 70, 400 };
- protected boolean[] columnVisibility = { false, true, true,true, true, true,
- true, true };
+ SummaryLabels.FAILED_API_LIST_VIEW_ERROR_DESCRIPTION,
+ SummaryLabels.FAILED_API_LIST_VIEW_PID };
+ protected int[] columnSizes = { 25, 60, 150, 125, 70, 70, 400, 45 };
+ protected boolean[] columnVisibility = { false, true, true, true, true,
+ true, true, true };
protected int[] sortTypes = { AnalyzerConstants.SORT_TYPE_NUM,
AnalyzerConstants.SORT_TYPE_NUM,
AnalyzerConstants.SORT_TYPE_STRING,
data.add(Long.toString(failedData.getTime()));
text.add(failedData.getName()); // 2
data.add(failedData.getName());
- text.add(Integer.toString(failedData.getPid())); // 3
- data.add(Integer.toString(failedData.getPid()));
- text.add(failedData.getArgs()); // 4
+
+ text.add(failedData.getArgs()); // 3
data.add(failedData.getArgs());
- text.add(failedData.getHexReturn()); // 5
+ text.add(failedData.getHexReturn()); // 4
data.add(Long.toString(failedData.getReturn()));
- data.add(Long.toString(failedData.getCallerPc())); // 6
+ data.add(Long.toString(failedData.getCallerPc())); // 5
String errCode = ErrorCodeManager.getInatance()
.getErrorCode(failedData.getErrorCode()).name();
// FIXME : for debug
errMsg = "undefined error number"; //$NON-NLS-1$
}
- text.add(errMsg); // 7
+ text.add(errMsg); // 6
data.add(Long.toString(failedData.getErrorCode()));
+ text.add(Integer.toString(failedData.getPid())); // 7
+ data.add(Integer.toString(failedData.getPid()));
// create images
// create DATableDataFormat
import java.util.ArrayList;
import java.util.List;
-import org.tizen.dynamicanalyzer.common.AnalyzerConstants;
import org.tizen.dynamicanalyzer.swap.callstack.BaseCallstackManager;
-import org.tizen.dynamicanalyzer.swap.model.data.FileData;
import org.tizen.dynamicanalyzer.swap.model.data.LogData;
-import org.tizen.dynamicanalyzer.swap.model.data.MemoryData;
import org.tizen.dynamicanalyzer.swap.model.data.ProbeCommonData;
-import org.tizen.dynamicanalyzer.swap.model.data.UserFunctionData;
import org.tizen.dynamicanalyzer.utils.AnalyzerUtil;
public class FailedChecker {
List<FailedData> failedList;
public void check(LogData log, BaseCallstackManager cm) {
- if (log instanceof MemoryData) {
- if (AnalyzerUtil.isInternal((ProbeCommonData) log)) {
- return;
- }
- long addr = ((MemoryData) log).getAddress();
- if (addr == 0) { //$NON-NLS-1$ //$NON-NLS-2$
- return;
- }
- checkUserDefinedFunc(log, cm);
- }
- if (log instanceof FileData) {
- FileData fileData = ((FileData) log);
- if (AnalyzerUtil.isInternal(fileData)) {
+ if (log instanceof ProbeCommonData) {
+ ProbeCommonData probeData = (ProbeCommonData) log;
+ if (AnalyzerUtil.isInternal(probeData)) {
return;
}
- int fdType = fileData.getFdApiType();
- long errno = fileData.getErrno();
- if (fdType == 0 || errno == 0) {
+
+ if (probeData.getErrno() == 0) // success
+ {
return;
}
- checkUserDefinedFunc(fileData, cm);
- }
- if (log instanceof UserFunctionData) {
- // TODO : check user function error???
- return;
- }
- }
- private void checkUserDefinedFunc(LogData log, BaseCallstackManager cm) {
- if (AnalyzerConstants.USER_CALL == AnalyzerUtil
- .checkUserCall((ProbeCommonData) log)) {
FailedData fd = new FailedData(log);
getFailedList().add(fd);
}
SummaryLabels.LEAK_VIEW_TYPE, SummaryLabels.LEAK_VIEW_TIME,
SummaryLabels.LEAK_VIEW_FILE_PARAMETER,
SummaryLabels.LEAK_VIEW_RETURN, AnalyzerLabels.TABLE_COLUMN_LIBNAME };
- protected int[] columnSizes = { 60, 45, 25, 60, 60, 100, 70, 200 };
+ protected int[] columnSizes = { 150, 45, 25, 60, 60, 100, 70, 200 };
protected boolean[] columnVisibility = { true, true, false, true, true,
true, true, true };
protected int[] sortTypes = { AnalyzerConstants.SORT_TYPE_GRID,
TimelinePageLabels.CALL_TRACE_VIEW_TID,
TimelinePageLabels.CALL_TRACE_VIEW_PID,
TimelinePageLabels.CALL_TRACE_VIEW_NAME,
- AnalyzerLabels.TABLE_COLUMN_ARGUMENT,
+ AnalyzerLabels.TABLE_COLUMN_PARAMETERS,
AnalyzerLabels.TABLE_COLUMN_RETURN,
AnalyzerLabels.TABLE_COLUMN_LIBNAME };
private int[] columnSizes = { 60, 35, 35, 350, 150, 80, 200 };
if (isTree() && getColumn() != 0) {
gc.drawText(text, getBounds().x + x, getBounds().y + textTopMargin,
true);
- }else if (!isTree() || getColumn() != 0) {
+ } else if (!isTree() || getColumn() != 0) {
gc.drawText(text, getBounds().x + x, getBounds().y + textTopMargin,
true);
}
protected DefaultTableComparator comparator = null;
protected int[] sortTypes = null;
-// protected int[] sourceColumns = null;
+ // protected int[] sourceColumns = null;
protected int[] columnAlignment = null;
protected boolean findEnabled = true;
private String[] columnNames = null;
-
+
protected boolean autoColumnPack = true;
protected DAPopupMenu popupMenu = null;
if (null != comparator && null != sortTypes) {
final int type = sortTypes[i];
-// final int sourceColumn = sourceColumns[i];
+ // final int sourceColumn = sourceColumns[i];
final int columnIndex = i;
column.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(SelectionEvent event) {
comparator.setType(type);
comparator.setColumn(columnIndex);
-// comparator.setSourceColumn(sourceColumn);
+ // comparator.setSourceColumn(sourceColumn);
comparator.reverseDirection();
updateTable();
}
}
}
}
-
+
public List<String> getColumnsName() {
List<String> dbColumnsName = new ArrayList<String>();
gridItem.setImage(0, ImageResources.FAILED_API_ICON_TABLE);
}
}
-
+
if (gridData != null) {
long seqNum = gridData.getSelectionKey();
for (int ii = 0; ii < selSeqs.size(); ii++) {
}
}
-// public void setSourceColumns(int[] columns) {
-// sourceColumns = columns;
-// }
+ // public void setSourceColumns(int[] columns) {
+ // sourceColumns = columns;
+ // }
public void setColumnAlignment(int[] columns) {
columnAlignment = columns;
});
}
- // public static void setRecordState(final String state) {
- // recordState = state;
- // }
-
public static int getTableItemHeight(Grid table) {
GC gc = new GC(table);
gc.setFont(table.getFont());
}
public static boolean isInternal(ProbeCommonData log) {
+ boolean ret = false;
if (AnalyzerConstants.CHECK_INTERNAL) {
- try {
- // int flag = Integer
- // .parseInt(input[LogCenterConstants.INTERNAL_FLAG_INDEX]);
- int flag = log.getInternalCall();
- if (flag == LogCenterConstants.INTERNAL_CALL) {
- return true;
- } else {
- return false;
- }
- } catch (NumberFormatException e) {
- e.printStackTrace();
- return false;
- }
- } else {
- return false;
- }
- }
-
- public static boolean isInternal(List<String> input, boolean isDB) {
- if (AnalyzerConstants.CHECK_INTERNAL) {
- int index = LogCenterConstants.INTERNAL_FLAG_INDEX;
- if (isDB) {
- index++;
- }
- int flag = Integer.parseInt(input.get(index));
- if (flag == LogCenterConstants.INTERNAL_CALL) {
- return true;
+ int flag = log.getInternalCall();
+ if (flag == AnalyzerConstants.INTERNAL_CALL) {
+ ret = true;
} else {
- return false;
+ ret = false;
}
- } else {
- return false;
}
+ return ret;
}
public static String makeLongList2String(List<Long> input) {
return str.toString();
}
- public static int checkUserCall(ProbeCommonData input) {
- int internalValue = input.getInternalCall();
- if (internalValue == AnalyzerConstants.USER_CALL) {
- return AnalyzerConstants.USER_CALL;
- // } else if (internalValue == AnalyzerConstants.INTERNAL_CALL) {
- } else {
- return AnalyzerConstants.INTERNAL_CALL;
- }
-
- // HashMap<Integer, CallStackData> cdMap = AnalyzerManager
- // .getCallstackManager().getCallStackDataBySeqMap();
- // HashMap<Long, CallStackUnit> addrMap = AnalyzerManager
- // .getCallstackManager().getCallStackApiByAddrMap();
- //
- // if (null == cdMap || null == addrMap) {
- // return AnalyzerConstants.USER_CALL_CHECK_ERROR;
- // }
- // int seqNum = Integer
- // .parseInt(input[LogCenterConstants.SEQUENCE_NUMBER_INDEX]);
- // CallStackData csd = cdMap.get(seqNum);
- // List<Long> addrs = csd.getAddrs();
- // if (addrs.isEmpty() || addrs.size() < 3) {
- // // FIXME
- // return AnalyzerConstants.USER_CALL_CHECK_ERROR;
- // }
- //
- // String funcName = addrMap.get(addrs.get(0)).getFunctionName();
- // if (AnalyzerManager.getCallstackManager().checkUserCall(funcName)) {
- // return AnalyzerConstants.USER_CALL;
- // }
- // return AnalyzerConstants.INTERNAL_CALL;
- }
-
public static boolean deleteFile(File file) {
if (file.isDirectory()) {
String[] children = file.list();