The following issues were found
src/third_party/boost/boost/mp11/detail/config.hpp
1 issues
Line: 69
Column: 21
CWE codes:
120
20
Suggestion:
Use fgets() instead
// Clang pre-4 in C++14 mode, libstdc++ pre-4.9, ::gets is not defined,
// but Clang tries to import it into std
extern "C" char *gets (char *__s);
#endif
#elif defined(__INTEL_COMPILER)
// Intel C++
Reported by FlawFinder.
src/third_party/mozjs-60/extract/js/src/jit/BaselineCacheIRCompiler.cpp
1 issues
Line: 78
private:
#define DEFINE_OP(op) MOZ_MUST_USE bool emit##op();
CACHE_IR_OPS(DEFINE_OP)
#undef DEFINE_OP
Address stubAddress(uint32_t offset) const {
return Address(ICStubReg, stubDataOffset_ + offset);
}
Reported by Cppcheck.
src/third_party/mozjs-60/extract/js/src/jit/BaselineIC.cpp
1 issues
Line: 124
Column: 5
CWE codes:
120
Suggestion:
Make sure destination can always hold the source data
uint8_t* frameStart = (uint8_t*)info + AlignBytes(ionOsrTempDataSpace, sizeof(Value));
info->baselineFrame = frameStart + frameSpace;
memcpy(frameStart, (uint8_t*)frame - numLocalsAndStackVals * sizeof(Value), frameSpace);
JitSpew(JitSpew_BaselineOSR, "Allocated IonOsrTempData at %p", (void*) info);
JitSpew(JitSpew_BaselineOSR, "Jitcode is %p", info->jitcode);
// All done.
Reported by FlawFinder.
src/third_party/mozjs-60/extract/js/src/jit/BaselineJIT.cpp
1 issues
Line: 789
Column: 5
CWE codes:
120
Suggestion:
Make sure destination can always hold the source data
MOZ_ASSERT(entries.length() > 0);
MOZ_ASSERT(entries.length() == pcMappingSize_);
memcpy(pcMappingData(), entries.buffer(), entries.length());
}
void
BaselineScript::copyPCMappingIndexEntries(const PCMappingIndexEntry* entries)
{
Reported by FlawFinder.
src/third_party/mozjs-60/extract/js/src/jit/CacheIRCompiler.cpp
1 issues
Line: 2508
Column: 10
CWE codes:
134
Suggestion:
Use a constant for the format specification
CacheIRCompiler::emitCallPrintString()
{
const char* str = reinterpret_cast<char*>(reader.pointer());
masm.printf(str);
return true;
}
bool
CacheIRCompiler::emitBreakpoint()
Reported by FlawFinder.
src/third_party/mozjs-60/extract/js/src/jit/CacheIRSpewer.cpp
1 issues
Line: 63
Column: 5
CWE codes:
119
120
Suggestion:
Perform bounds checking, use functions that limit length, or ensure that the size is larger than the maximum possible length
if (enabled())
return true;
char name[256];
uint32_t pid = getpid();
SprintfLiteral(name, JIT_SPEW_DIR "/cacheir%" PRIu32 ".json", pid);
if (!output.init(name))
return false;
Reported by FlawFinder.
src/third_party/mozjs-60/extract/js/src/jit/CodeGenerator.cpp
1 issues
Line: 11252
CWE codes:
908
masm.loadPtr(source, out);
}
if (bailOnNull) {
Label bail;
masm.branchTestPtr(Assembler::Zero, out, out, &bail);
bailoutFrom(&bail, lir->snapshot());
}
}
Reported by Cppcheck.
src/third_party/mozjs-60/extract/js/src/jit/IonBuilder.cpp
1 issues
Line: 2678
Column: 10
CWE codes:
126
Suggestion:
This function is often discouraged by most C++ coding standards in favor of its safer alternatives provided since C++14. Consider using a form of this function that checks the second iterator before potentially overflowing it
trueBranch = !trueBranch;
// Relational compares not supported.
if (!equal && !notEqual)
return Ok();
MDefinition* subject = typeOf->input();
TemporaryTypeSet* inputTypes = subject->resultTypeSet();
Reported by FlawFinder.
src/third_party/mozjs-60/extract/js/src/jit/Jit.cpp
1 issues
Line: 87
CWE codes:
476
// Caller must construct |this| before invoking the function.
MOZ_ASSERT_IF(constructing,
maxArgv[0].isObject() || maxArgv[0].isMagic(JS_UNINITIALIZED_LEXICAL));
RootedValue result(cx, Int32Value(numActualArgs));
{
AssertCompartmentUnchanged pcc(cx);
ActivationEntryMonitor entryMonitor(cx, calleeToken);
Reported by Cppcheck.
src/third_party/mozjs-60/extract/js/src/jit/JitAllocPolicy.h
1 issues
Line: 110
Column: 9
CWE codes:
120
Suggestion:
Make sure destination can always hold the source data
if (MOZ_UNLIKELY(!n))
return n;
MOZ_ASSERT(!(oldSize & mozilla::tl::MulOverflowMask<sizeof(T)>::value));
memcpy(n, p, Min(oldSize * sizeof(T), newSize * sizeof(T)));
return n;
}
template <typename T>
T* pod_malloc(size_t numElems) {
return maybe_pod_malloc<T>(numElems);
Reported by FlawFinder.