|
12 | 12 | import soot.jimple.infoflow.InfoflowConfiguration; |
13 | 13 | import soot.jimple.infoflow.data.AccessPath; |
14 | 14 | import soot.jimple.infoflow.data.AccessPathFragment; |
| 15 | +import soot.jimple.infoflow.data.SootMethodAndClass; |
15 | 16 | import soot.jimple.infoflow.results.InfoflowPerformanceData; |
16 | 17 | import soot.jimple.infoflow.results.InfoflowResults; |
17 | 18 | import soot.jimple.infoflow.results.ResultSinkInfo; |
@@ -209,7 +210,8 @@ private void writeSourceInfo(ResultSourceInfo source, XMLStreamWriter writer) th |
209 | 210 | ISourceSinkDefinition def = source.getDefinition(); |
210 | 211 | if (def instanceof MethodSourceSinkDefinition) { |
211 | 212 | MethodSourceSinkDefinition ms = (MethodSourceSinkDefinition) def; |
212 | | - writer.writeAttribute(XmlConstants.Attributes.methodSourceSinkDefinition, ms.getMethod().getSignature()); |
| 213 | + if (ms.getMethod() != null) |
| 214 | + writer.writeAttribute(XmlConstants.Attributes.methodSourceSinkDefinition, ms.getMethod().getSignature()); |
213 | 215 | } |
214 | 216 |
|
215 | 217 | writeAdditionalSourceInfo(source, writer); |
@@ -271,7 +273,8 @@ private void writeSinkInfo(ResultSinkInfo sink, XMLStreamWriter writer) throws X |
271 | 273 | ISourceSinkDefinition def = sink.getDefinition(); |
272 | 274 | if (def instanceof MethodSourceSinkDefinition) { |
273 | 275 | MethodSourceSinkDefinition ms = (MethodSourceSinkDefinition) def; |
274 | | - writer.writeAttribute(XmlConstants.Attributes.methodSourceSinkDefinition, ms.getMethod().getSignature()); |
| 276 | + if (ms.getMethod() != null) |
| 277 | + writer.writeAttribute(XmlConstants.Attributes.methodSourceSinkDefinition, ms.getMethod().getSignature()); |
275 | 278 | } |
276 | 279 | writeAdditionalSinkInfo(sink, writer); |
277 | 280 | writeAccessPath(sink.getAccessPath(), writer); |
|
0 commit comments