diff --git a/Chummer/Backend/Equipment/Weapon.cs b/Chummer/Backend/Equipment/Weapon.cs index 61429209cb..605f99207b 100644 --- a/Chummer/Backend/Equipment/Weapon.cs +++ b/Chummer/Backend/Equipment/Weapon.cs @@ -6184,15 +6184,20 @@ private Skill Skill strSkill = UseSkill; strSpec = string.Empty; - if (ExoticSkill.IsExoticSkillName(_objCharacter, UseSkill)) + (bool blnIsExotic, string strSkillName) + = ExoticSkill.IsExoticSkillNameTuple(_objCharacter, UseSkill); + if (blnIsExotic) + { + strSkill = strSkillName; strSpec = UseSkillSpec; + } } // Locate the Active Skill to be used. Skill objSkill = _objCharacter.SkillsSection.GetActiveSkill(strSkill); - if (string.IsNullOrEmpty(strSpec) || objSkill.HasSpecialization(strSpec) - || objSkill.HasSpecialization(Name) || (!string.IsNullOrEmpty(Spec2) - && objSkill.HasSpecialization(Spec2))) + if (string.IsNullOrEmpty(strSpec) || objSkill == null || objSkill.HasSpecialization(strSpec) + || objSkill.HasSpecialization(Name) + || (!string.IsNullOrEmpty(Spec2) && objSkill.HasSpecialization(Spec2))) return objSkill; return null; }