Index: ship.cpp
===================================================================
--- ship.cpp	(revision 4689)
+++ ship.cpp	(working copy)
@@ -7007,14 +7007,19 @@
 						continue;
 
 					w_bank *bank = &model_get(sip->model_num)->missile_banks[i];
+					
+					int num_secondaries_rendered = 0;
+					
 					for(k = 0; k < bank->num_slots; k++) {
 						vec3d secondary_weapon_pos = bank->pnt[k];
 					//	vm_vec_add(&secondary_weapon_pos, &obj->pos, &bank->pnt[k]);
 		
 					//	if(shipp->secondary_point_reload_pct[i][k] != 1.0)
 					//		vm_vec_scale_add2(&secondary_weapon_pos, &obj->orient.vec.fvec, -(1.0f-shipp->secondary_point_reload_pct[i][k]) * model_get(Weapon_info[swp->secondary_bank_weapons[i]].model_num)->rad);
-						if(shipp->secondary_point_reload_pct[i][k] <= 0.0)
+						if(shipp->secondary_point_reload_pct[i][k] <= 0.0 || num_secondaries_rendered >= shipp->weapons.secondary_bank_ammo[i])
 							continue;
+						
+						num_secondaries_rendered++;
 		
 						vec3d dir = ZERO_VECTOR;
 						dir.xyz.z = 1.0;
