Source:
<code>protected String getStackFrameText(IScriptStackFrame stackFrame) { try { String sourceLine = stackFrame.getSourceLine(); final URI sourceURI = stackFrame.getSourceURI(); if (sourceLine == null || sourceLine.length() == 0) { final ILaunch launch = stackFrame.getLaunch(); final ISourceLocator sourceLocator = launch.getSourceLocator(); if (sourceLocator != null) { final Object object = sourceLocator .getSourceElement(stackFrame); if (object instanceof IFile) { final IDocumentProvider provider = DLTKUIPlugin .getDocumentProvider(); final IDocument document = provider .getDocument(new FileEditorInput((IFile) object)); if (document != null) { try { sourceLine = retrieveStackFrameLine(stackFrame, document); } catch (BadLocationException e) { DLTKDebugUIPlugin.log(e); } } } else if (DLTKDebugConstants.UNKNOWN_SCHEME .equalsIgnoreCase(sourceURI.getScheme())) { sourceLine = sourceURI.getFragment(); } else { sourceLine = toString(sourceURI); } } } if (sourceLine == null || sourceLine.length() == 0) { final int level = stackFrame.getStack().size() - stackFrame.getLevel() - 1; sourceLine = NLS.bind( Messages.ScriptDebugModelPresentation_stackFrameText, <START> Integer.valueOf(level)); <END> } if (stackFrame.getLineNumber() > 0) { if (DLTKDebugConstants.FILE_SCHEME.equalsIgnoreCase(sourceURI .getScheme())) { final IPath path = getStackFrameRelativePath(stackFrame); return NLS .bind(Messages.ScriptDebugModelPresentation_stackFrameText2, new Object[] { sourceLine, path.toString(), Integer.valueOf(stackFrame .getLineNumber()) }); } else { return NLS .bind(Messages.ScriptDebugModelPresentation_stackFrameText3, sourceLine, Integer.valueOf(stackFrame.getLineNumber())); } } else { return sourceLine; } } catch (CoreException e) { DLTKDebugUIPlugin.log(e); } return stackFrame.toString(); }</code><technical_language>autoboxing OK in this file</technical_language>

Target:
protected String getStackFrameText(IScriptStackFrame stackFrame) { try { String sourceLine = stackFrame.getSourceLine(); final URI sourceURI = stackFrame.getSourceURI(); if (sourceLine == null || sourceLine.length() == 0) { final ILaunch launch = stackFrame.getLaunch(); final ISourceLocator sourceLocator = launch.getSourceLocator(); if (sourceLocator != null) { final Object object = sourceLocator .getSourceElement(stackFrame); if (object instanceof IFile) { final IDocumentProvider provider = DLTKUIPlugin .getDocumentProvider(); final IDocument document = provider.getDocument( new FileEditorInput((IFile) object)); if (document != null) { try { sourceLine = retrieveStackFrameLine(stackFrame, document); } catch (BadLocationException e) { DLTKDebugUIPlugin.log(e); } } } else if (DLTKDebugConstants.UNKNOWN_SCHEME .equalsIgnoreCase(sourceURI.getScheme())) { sourceLine = sourceURI.getFragment(); } else { sourceLine = toString(sourceURI); } } } if (sourceLine == null || sourceLine.length() == 0) { final int level = stackFrame.getStack().size() - stackFrame.getLevel() - 1; sourceLine = NLS.bind( Messages.ScriptDebugModelPresentation_stackFrameText, level); } if (stackFrame.getLineNumber() > 0) { if (DLTKDebugConstants.FILE_SCHEME .equalsIgnoreCase(sourceURI.getScheme())) { final IPath path = getStackFrameRelativePath(stackFrame); return NLS.bind( Messages.ScriptDebugModelPresentation_stackFrameText2, new Object[] { sourceLine, path.toString(), stackFrame.getLineNumber() }); } else { return NLS.bind( Messages.ScriptDebugModelPresentation_stackFrameText3, sourceLine, stackFrame.getLineNumber()); } } else { return sourceLine; } } catch (CoreException e) { DLTKDebugUIPlugin.log(e); } return stackFrame.toString(); }