diff options
author | Zhigang Gong <zhigang.gong@intel.com> | 2014-09-11 13:44:16 +0800 |
---|---|---|
committer | Zhigang Gong <zhigang.gong@intel.com> | 2014-09-11 13:46:21 +0800 |
commit | 9de5d17b852056cf9acb34a2747f8d86dabceb89 (patch) | |
tree | 3fe6d3fe581140a53da68e6062fa5ea24d5b8d1d | |
parent | e3715c5716d6427c0974838a0818c7f4b4ca216b (diff) |
GBE: Fix a potential segfault.
And when we fail to compile a module, the fileName may be NULL, we can't
access it unconditionally.
Signed-off-by: Zhigang Gong <zhigang.gong@intel.com>
Reviewed-by: "Yang, Rong R" <rong.r.yang@intel.com>
-rw-r--r-- | backend/src/backend/program.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/backend/src/backend/program.cpp b/backend/src/backend/program.cpp index cc76493..bd194a7 100644 --- a/backend/src/backend/program.cpp +++ b/backend/src/backend/program.cpp @@ -114,7 +114,8 @@ namespace gbe { cloned_module = llvm::CloneModule((llvm::Module*)module); } if (llvmToGen(*unit, fileName, module, optLevel, OCL_STRICT_CONFORMANCE) == false) { - error = std::string(fileName) + " not found"; + if (fileName) + error = std::string(fileName) + " not found"; return false; } //If unit is not valid, maybe some thing don't support by backend, introduce by some passes |