diff --git a/av1/common/pred_common.h b/av1/common/pred_common.h
index 7c3b042..e381610 100644
--- a/av1/common/pred_common.h
+++ b/av1/common/pred_common.h
@@ -21,8 +21,10 @@
 #endif
 
 #if CONFIG_SPATIAL_SEGMENTATION
-/* Picks CDFs based on number of matching segment IDs */
+/* Picks CDFs based on number of matching/out-of-bounds segment IDs */
 static INLINE int pick_spatial_seg_cdf(int prev_ul, int prev_u, int prev_l) {
+  if (prev_ul < 0 || prev_u < 0 || prev_l < 0) /* Edge case */
+    return 0;
   if ((prev_ul == prev_u) && (prev_ul == prev_l))
     return 2;
   else if ((prev_ul == prev_u) || (prev_ul == prev_l) || (prev_u == prev_l))
@@ -31,8 +33,12 @@
     return 0;
 }
 
+/* If 2 or more are identical returns that as predictor, otherwise prev_l */
 static INLINE int pick_spatial_seg_pred(int prev_ul, int prev_u, int prev_l) {
-  /* If 2 or more are identical returns that as predictor, otherwise prev_l */
+  if (prev_u == -1) /* Edge case */
+    return prev_l == -1 ? 0 : prev_l;
+  if (prev_l == -1) /* Edge case */
+    return prev_u;
   return (prev_ul == prev_u) ? prev_u : prev_l;
 }
 
diff --git a/av1/decoder/decodemv.c b/av1/decoder/decodemv.c
index e1a69e1..4b6694e 100644
--- a/av1/decoder/decodemv.c
+++ b/av1/decoder/decodemv.c
@@ -350,9 +350,9 @@
                            int mi_row, int mi_col, aom_reader *r, int skip) {
   FRAME_CONTEXT *ec_ctx = xd->tile_ctx;
   struct segmentation_probs *const segp = &ec_ctx->seg;
-  int prev_ul = 0; /* Top left segment_id */
-  int prev_l = 0;  /* Current left segment_id */
-  int prev_u = 0;  /* Current top segment_id */
+  int prev_ul = -1; /* Top left segment_id */
+  int prev_l = -1;  /* Current left segment_id */
+  int prev_u = -1;  /* Current top segment_id */
 
   if ((xd->up_available) && (xd->left_available))
     prev_ul = get_segment_id(cm, cm->current_frame_seg_map, BLOCK_4X4,
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index 8aa8bb0..25eac0a 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -593,9 +593,9 @@
                              int mi_col, int skip) {
   AV1_COMMON *const cm = &cpi->common;
   MACROBLOCKD *const xd = &cpi->td.mb.e_mbd;
-  int prev_ul = 0; /* Top left segment_id */
-  int prev_l = 0;  /* Current left segment_id */
-  int prev_u = 0;  /* Current top segment_id */
+  int prev_ul = -1; /* Top left segment_id */
+  int prev_l = -1;  /* Current left segment_id */
+  int prev_u = -1;  /* Current top segment_id */
 
   if (!seg->enabled || !seg->update_map) return;
 
