Skip to content

Commit 3f5b4a8

Browse files
committed
C++: Fix more inconsistencies.
1 parent 854a277 commit 3f5b4a8

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

cpp/ql/lib/semmle/code/cpp/models/implementations/StdString.qll

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,11 @@ private class StdStringPlus extends StdStringTaintFunction, SideEffectFunction,
224224
override predicate hasOnlySpecificWriteSideEffects() { any() }
225225

226226
override predicate hasSpecificReadSideEffect(ParameterIndex i, boolean buffer) {
227-
i = [0, 1] and buffer = false
227+
this.getParameter(i).getUnspecifiedType() instanceof ReferenceType and
228+
buffer = false
229+
or
230+
this.getParameter(i).getUnspecifiedType() instanceof PointerType and
231+
buffer = true
228232
}
229233

230234
override predicate parameterNeverEscapes(int index) { index = [0, 1] }

0 commit comments

Comments
 (0)