Fix crash with bad location uri (#2746)

fix crash with bad location uri
This commit is contained in:
Ajay Bura
2026-03-09 18:17:15 +11:00
committed by GitHub
parent d679e68501
commit 2eb5a9a616
2 changed files with 17 additions and 7 deletions

View File

@@ -389,6 +389,8 @@ export function MLocation({ content }: MLocationProps) {
const geoUri = content.geo_uri; const geoUri = content.geo_uri;
if (typeof geoUri !== 'string') return <BrokenContent />; if (typeof geoUri !== 'string') return <BrokenContent />;
const location = parseGeoUri(geoUri); const location = parseGeoUri(geoUri);
if (!location) return <BrokenContent />;
return ( return (
<Box direction="Column" alignItems="Start" gap="100"> <Box direction="Column" alignItems="Start" gap="100">
<Text size="T400">{geoUri}</Text> <Text size="T400">{geoUri}</Text>

View File

@@ -87,13 +87,21 @@ export const scaleYDimension = (x: number, scaledX: number, y: number): number =
}; };
export const parseGeoUri = (location: string) => { export const parseGeoUri = (location: string) => {
try {
const [, data] = location.split(':'); const [, data] = location.split(':');
const [cords] = data.split(';'); const [cords] = data.split(';');
const [latitude, longitude] = cords.split(','); const [latitude, longitude] = cords.split(',');
if (typeof latitude === 'string' && typeof longitude === 'string') {
return { return {
latitude, latitude,
longitude, longitude,
}; };
}
return undefined;
} catch {
return undefined;
}
}; };
const START_SLASHES_REG = /^\/+/g; const START_SLASHES_REG = /^\/+/g;