diff --git a/src/portal.h b/src/portal.h
index 88eee2d64f..1e00acf819 100644
--- a/src/portal.h
+++ b/src/portal.h
@@ -210,6 +210,13 @@ inline int line_t::getPortalAlignment() const
 }
 
 inline bool sector_t::PortalBlocksView(int plane)
+{
+	if (SkyBoxes[plane] == NULL) return true;
+	if (SkyBoxes[plane]->special1 != SKYBOX_LINKEDPORTAL) return false;
+	return !!(planes[plane].Flags & (PLANEF_NORENDER | PLANEF_DISABLED | PLANEF_OBSTRUCTED));
+}
+
+inline bool sector_t::PortalBlocksSight(int plane)
 {
 	if (SkyBoxes[plane] == NULL || SkyBoxes[plane]->special1 != SKYBOX_LINKEDPORTAL) return true;
 	return !!(planes[plane].Flags & (PLANEF_NORENDER | PLANEF_DISABLED | PLANEF_OBSTRUCTED));
diff --git a/src/r_defs.h b/src/r_defs.h
index 739151c06c..eb08cec7bc 100644
--- a/src/r_defs.h
+++ b/src/r_defs.h
@@ -740,6 +740,7 @@ struct sector_t
 	}
 
 	bool PortalBlocksView(int plane);
+	bool PortalBlocksSight(int plane);
 	bool PortalBlocksMovement(int plane);
 	bool PortalBlocksSound(int plane);