3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-12 06:00:53 +00:00

fix a couple hundred deref-after-free bugs due to .c_str() on a temporary string

This commit is contained in:
Nuno Lopes 2020-07-11 20:24:45 +01:00
parent 48a9defb0d
commit 23e6adcad3
64 changed files with 248 additions and 229 deletions

View file

@ -20,8 +20,9 @@ Revision History:
// include "util/new_symbol.h"
#else
#pragma once
#include<ostream>
#include<climits>
#include <climits>
#include <string>
#include <ostream>
#include "util/util.h"
#include "util/tptr.h"
@ -56,6 +57,7 @@ public:
m_data(nullptr) {
}
explicit symbol(char const * d);
explicit symbol(const std::string & str) : symbol(str.c_str()) {}
explicit symbol(unsigned idx):
m_data(BOXTAGINT(char const *, idx, 1)) {
#if !defined(__LP64__) && !defined(_WIN64)