コード例 #1
0
void idaapi reset_pointer_type(const cfuncptr_t &cfunc, qstring &var_name) {
	lvars_t * locals = cfunc->get_lvars();
	if (locals != NULL) {
		qvector<lvar_t>::iterator locals_iter;

		for (locals_iter = locals->begin(); locals_iter != locals->end(); locals_iter++) {
			if (!strcmp(var_name.c_str(), (*locals_iter).name.c_str())) {
				tinfo_t int_type = tinfo_t(BT_INT32);
				(*locals_iter).set_final_lvar_type(int_type);
				(*locals_iter).set_user_type();
				cfunc->build_c_tree();
				break;
			}
		}
	}
}
コード例 #2
0
void idaapi reset_pointer_type(cfuncptr_t cfunc, const qstring &var_name) {
	lvars_t * locals = cfunc->get_lvars();
	if (locals == NULL)
		return;

	qvector<lvar_t>::iterator locals_iter;

	for (locals_iter = locals->begin(); locals_iter != locals->end(); locals_iter++) {
		if (var_name != locals_iter->name)
			continue;

		tinfo_t int_type = tinfo_t(BT_INT32);
		locals_iter->set_final_lvar_type(int_type);
		locals_iter->set_user_type();
		cfunc->build_c_tree();
		break;
	}
}