From 4260a321aca97ae2fb04e4e37dc1dd0816f2a72f Mon Sep 17 00:00:00 2001 From: Latif Khalifa Date: Sat, 31 Mar 2012 00:17:26 +0000 Subject: [PATCH] LIBOMV-939: Gridproxy invalid cast exception on misformatted CAPS Patch by Dahlia git-svn-id: http://libopenmetaverse.googlecode.com/svn/libopenmetaverse/trunk@3603 52acb1d6-8a22-11de-b505-999d5b087335 --- Programs/GridProxy/GridProxy.cs | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Programs/GridProxy/GridProxy.cs b/Programs/GridProxy/GridProxy.cs index af81a6b9..f7e8e85a 100644 --- a/Programs/GridProxy/GridProxy.cs +++ b/Programs/GridProxy/GridProxy.cs @@ -1022,8 +1022,16 @@ namespace GridProxy { if (stage != CapsStage.Response) return false; - OSDMap map = (OSDMap)capReq.Response; - OSDArray array = (OSDArray)map["events"]; + OSDMap map = null; + if (capReq.Response is OSDMap) + map = (OSDMap)capReq.Response; + else return false; + + OSDArray array = null; + if (map.ContainsKey("events") && map["events"] is OSDArray) + array = (OSDArray)map["events"]; + else + return false; for (int i = 0; i < array.Count; i++) {