aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorMiodrag Milanović <mmicko@gmail.com>2023-01-23 16:24:22 +0100
committerGitHub <noreply@github.com>2023-01-23 16:24:22 +0100
commit245884a1011fe45b00bbb9cacd0111eb014adadf (patch)
treed1bcd1f90dc656bef8409bd5f7a677c8d4e4aa35 /kernel
parent9bc9121b9efeeb490ca593f75354457a4e420653 (diff)
parent6574553189fb6ccb5d00a0c043671a625672b3d3 (diff)
downloadyosys-245884a1011fe45b00bbb9cacd0111eb014adadf.tar.gz
yosys-245884a1011fe45b00bbb9cacd0111eb014adadf.tar.bz2
yosys-245884a1011fe45b00bbb9cacd0111eb014adadf.zip
Merge pull request #3629 from YosysHQ/micko/clang_fixes
Fixes for some of clang scan-build detected issues
Diffstat (limited to 'kernel')
-rw-r--r--kernel/fstdata.cc2
-rw-r--r--kernel/register.cc7
-rw-r--r--kernel/yosys.cc4
3 files changed, 7 insertions, 6 deletions
diff --git a/kernel/fstdata.cc b/kernel/fstdata.cc
index 1b8043f9a..65ae3426c 100644
--- a/kernel/fstdata.cc
+++ b/kernel/fstdata.cc
@@ -197,7 +197,7 @@ static void reconstruct_clb_attimes(void *user_data, uint64_t pnt_time, fstHandl
void FstData::reconstruct_callback_attimes(uint64_t pnt_time, fstHandle pnt_facidx, const unsigned char *pnt_value, uint32_t /* plen */)
{
- if (pnt_time > end_time) return;
+ if (pnt_time > end_time || !pnt_value) return;
// if we are past the timestamp
bool is_clock = false;
if (!all_samples) {
diff --git a/kernel/register.cc b/kernel/register.cc
index 0e4d503be..9ffb17c1a 100644
--- a/kernel/register.cc
+++ b/kernel/register.cc
@@ -531,10 +531,11 @@ void Frontend::extra_args(std::istream *&f, std::string &filename, std::vector<s
std::ifstream *ff = new std::ifstream;
ff->open(filename.c_str(), bin_input ? std::ifstream::binary : std::ifstream::in);
yosys_input_files.insert(filename);
- if (ff->fail())
+ if (ff->fail()) {
delete ff;
- else
- f = ff;
+ ff = nullptr;
+ }
+ f = ff;
if (f != NULL) {
// Check for gzip magic
unsigned char magic[3];
diff --git a/kernel/yosys.cc b/kernel/yosys.cc
index 333faae6a..bd8dded4b 100644
--- a/kernel/yosys.cc
+++ b/kernel/yosys.cc
@@ -469,8 +469,8 @@ std::string make_temp_dir(std::string template_str)
# endif
char *p = strdup(template_str.c_str());
- p = mkdtemp(p);
- log_assert(p != NULL);
+ char *res = mkdtemp(p);
+ log_assert(res != NULL);
template_str = p;
free(p);