diff --git a/matlab/gsa/stab_map_.m b/matlab/gsa/stab_map_.m
index 86f3aef985e9ff8c591007457efda16c741b9d96..94a49a20fd5c1aa76912f4088c0655a8e6087436 100644
--- a/matlab/gsa/stab_map_.m
+++ b/matlab/gsa/stab_map_.m
@@ -175,7 +175,9 @@ if fload==0
         end
         if opt_gsa.prior_range
             for j=1:np
-                lpmat(:,j)=lpmat(:,j).*(bounds.ub(j+nshock)-bounds.lb(j+nshock))+bounds.lb(j+nshock);
+                lower_bound=max(-options_.huge_number,bounds.lb(j+nshock));
+                upper_bound=min(options_.huge_number,bounds.ub(j+nshock));
+                lpmat(:,j)=lpmat(:,j).*(upper_bound-lower_bound)+lower_bound;
             end
         else
             xx=prior_draw_gsa(0,[lpmat0 lpmat]);