History

Address code analysis violations. Disable all Microsoft language extensions - All header files now end with a single new line character. Split vs_asm header from type signature templates - vs_asm_sigkind.h created

arr committed 9 years ago

Commit 02a7d6a1 parent ea995f224 files · +417 −392Browse files

Showing the changes to src/vm/thread.cpp (1 of 24 files). Show all

Unified · Split

src/vm/thread.cpp+9−3
@@ -239,19 +239,25 @@ vm_thread_state_t vm_thread_t::execute(vm_t &vm, const uint32_t quanta) · 238 unmodified lines
239239 catch (const unhandled_user_exception &uue)
240240 {
241241 _error_message = calloc_memory<char>(max_error_message);
242− std::snprintf(_error_message, max_error_message, "%s - '%s' in %s at instruction %d", uue.what(), uue.exception_id, uue.module_name, uue.program_counter);
242+ const int ec = std::snprintf(_error_message, max_error_message, "%s - '%s' in %s at instruction %d", uue.what(), uue.exception_id, uue.module_name, uue.program_counter);
243+ assert(ec > 0 && ec < max_error_message);
244+ (void)ec;
243245 _registers.current_thread_state = vm_thread_state_t::broken;
244246 }
245247 catch (const index_out_of_range_memory &ioor)
246248 {
247249 _error_message = calloc_memory<char>(max_error_message);
248− std::snprintf(_error_message, max_error_message, "%s - %d [%d,%d]", ioor.what(), ioor.invalid_value, ioor.valid_min, ioor.valid_max);
250+ const int ec = std::snprintf(_error_message, max_error_message, "%s - %d [%d,%d]", ioor.what(), ioor.invalid_value, ioor.valid_min, ioor.valid_max);
251+ assert(ec > 0 && ec < max_error_message);
252+ (void)ec;
249253 _registers.current_thread_state = vm_thread_state_t::broken;
250254 }
251255 catch (const vm_user_exception &ue)
252256 {
253257 _error_message = calloc_memory<char>(max_error_message);
254− std::snprintf(_error_message, max_error_message, "%s", ue.what());
258+ const int ec = std::snprintf(_error_message, max_error_message, "%s", ue.what());
259+ assert(ec > 0 && ec < max_error_message);
260+ (void)ec;
255261 _registers.current_thread_state = vm_thread_state_t::broken;
256262 }
257263