Merge pull request #3865 from Marqin/coverity

[Coverity] fixed 11 of 537 potential bugs found by Coverity
This commit is contained in:
Rémi Verschelde 2016-03-10 16:15:49 +01:00
commit aaad24e6fb
12 changed files with 34 additions and 22 deletions

View File

@ -429,6 +429,12 @@ uint32_t joystick_linux::process_joysticks(uint32_t p_event_id) {
for (int j = 0; j < len; j++) {
input_event &ev = events[j];
// ev may be tainted and out of MAX_KEY range, which will cause
// joy->key_map[ev.code] to crash
if( ev.code < 0 || ev.code >= MAX_KEY )
return p_event_id;
switch (ev.type) {
case EV_KEY:
p_event_id = input->joy_button(p_event_id, i, joy->key_map[ev.code], ev.value);

View File

@ -64,7 +64,11 @@ void Navigation::_navmesh_link(int p_id) {
continue;
}
p.center=center/plen;
p.center = center;
if( plen != 0 ) {
p.center /= plen;
}
//connect
@ -721,5 +725,3 @@ Navigation::Navigation() {
last_id=1;
up=Vector3(0,1,0);
}

View File

@ -361,7 +361,10 @@ void ColorPicker::_preset_input(const InputEvent &ev) {
emit_signal("color_changed", color);
} else if (ev.type == InputEvent::MOUSE_MOTION) {
const InputEventMouse &mev = ev.mouse_motion;
int index = mev.x/(preset->get_size().x/presets.size());
int index = mev.x * presets.size();
if( preset->get_size().x != 0 ) {
index /= preset->get_size().x;
}
if (index<0 || index >= presets.size())
return;
preset->set_tooltip("Color: #"+presets[index].to_html(presets[index].a<1)+"\n"
@ -684,4 +687,3 @@ ColorPickerButton::ColorPickerButton() {
picker->connect("color_changed",this,"_color_changed");
add_child(popup);
}

View File

@ -617,7 +617,7 @@ void GraphEdit::_input_event(const InputEvent& p_ev) {
if (b.button_index==BUTTON_LEFT && b.pressed) {
GraphNode *gn;
GraphNode *gn = NULL;
for(int i=get_child_count()-1;i>=0;i--) {
gn=get_child(i)->cast_to<GraphNode>();

View File

@ -5667,7 +5667,10 @@ void VisualServerRaster::_instance_validate_autorooms(Instance *p_geometry) {
int pass = room->room_info->room->bounds.get_points_inside(dst_points,point_count);
float ratio = (float)pass / point_count;
float ratio = pass;
if( point_count != 0 ) {
ratio /= (float)point_count;
}
if (ratio>0.5) // should make some constant
p_geometry->valid_auto_rooms.insert(room);
@ -7670,5 +7673,3 @@ VisualServerRaster::VisualServerRaster(Rasterizer *p_rasterizer) {
VisualServerRaster::~VisualServerRaster()
{
}

View File

@ -281,6 +281,7 @@ static void _edit_filter_list(Set<StringName>& r_list,const String& p_filter,boo
}
DirAccess *da = DirAccess::open("res://");
ERR_FAIL_NULL(da);
_edit_files_with_filter(da,filters,r_list,exclude);
memdelete(da);
}
@ -2217,5 +2218,3 @@ EditorImportExport::~EditorImportExport() {
}

View File

@ -725,7 +725,11 @@ Ref<Texture> EditorSamplePreviewPlugin::generate(const RES& p_from) {
} else {
half=1;
ofs=h/2;
v = ((j-(h/2))/(float)(h/2)) * 2.0 - 1.0;
if( (float)(h/2) != 0 ) {
v = ((j-(h/2))/(float)(h/2)) * 2.0 - 1.0;
} else {
v = ((j-(h/2))/(float)(1/2)) * 2.0 - 1.0;
}
}
uint8_t* imgofs = &imgw[(j*w+i)*3];

View File

@ -1784,7 +1784,8 @@ void ScriptEditor::_update_script_colors() {
if (h>hist_size) {
continue;
}
float v = Math::ease((edit_pass-pass)/float(hist_size),0.4);
int non_zero_hist_size = ( hist_size == 0 ) ? 1 : hist_size;
float v = Math::ease((edit_pass-pass)/float(non_zero_hist_size),0.4);
script_list->set_item_custom_bg_color(i,hot_color.linear_interpolate(cold_color,v));
@ -2704,4 +2705,3 @@ ScriptEditorPlugin::ScriptEditorPlugin(EditorNode *p_node) {
ScriptEditorPlugin::~ScriptEditorPlugin()
{
}

View File

@ -2084,7 +2084,9 @@ void SpatialEditorViewport::_menu_option(int p_option) {
count++;
}
center/=float(count);
if( count != 0 ) {
center/=float(count);
}
cursor.pos=center;
} break;
@ -4240,6 +4242,3 @@ SpatialEditorPlugin::SpatialEditorPlugin(EditorNode *p_node) {
SpatialEditorPlugin::~SpatialEditorPlugin() {
}

View File

@ -966,7 +966,7 @@ void ProjectSettings::_autoload_delete(Object *p_item,int p_column, int p_button
undo_redo->commit_action();
} else {
TreeItem *swap;
TreeItem *swap = NULL;
if (p_button==1) {
swap=ti->get_prev();

View File

@ -708,7 +708,8 @@ void EditorSpatialGizmo::_bind_methods() {
EditorSpatialGizmo::EditorSpatialGizmo() {
valid=false;
billboard_handle=false;
base=NULL;
spatial_node=NULL;
}
EditorSpatialGizmo::~EditorSpatialGizmo(){
@ -3219,4 +3220,3 @@ SpatialEditorGizmos::SpatialEditorGizmos() {
}

View File

@ -491,4 +491,3 @@ public:
};
#endif // SPATIAL_EDITOR_GIZMOS_H