Hello, I have a serious problem with spatial query in ArcObject. 
                    IRelationalOperator relOperInsideBarriers = (IRelationalOperator) fcInsideBarriers
                    IGeometryBag gbTotalConvexPathSplit = fcUtils.getGeoBag(fcTotalConvexPathSplit);
                    if (relOperInsideBarriers.Crosses(gbTotalConvexPathSplit) == false)
                    {
                        Console.WriteLine("Break");
                        break;
                    }
 
 Code is simple. I update featureclass "fcTotalConvexPathSplit" before this codeblck using other operations, then check 'crossing' with fcInsideBarriers.  fcTotalConvexPathSplit is line, and fcInsideBarriers is polygon. "relOperInsideBarriers.Crosses(gbTotalConvexPathSplit)" is supposed to return false there is no line in fcTotalConvexPathSplit crosses fcInsideBarriers, right? But, it return false when there are many number of crossings. I tried to simplify it, like below
                    IGeometryBag gbTotalConvexPathSplit = fcUtils.getGeoBag(fcTotalConvexPathSplit);
                    ITopologicalOperator pTopOp = gbTotalConvexPathSplit as ITopologicalOperator;
                    pTopOp.Simplify();
                    IGeometry igTopo = pTopOp as IGeometry;
                    if (relOperInsideBarriers.Crosses(igTopo) == false)
                    {
                        Console.WriteLine("Break");
                        break;
                    }
 
But result was same. It makes error. I also tried to use ISpatialFilter, but it made similar error, though it sometimes could produce right result, but otherwise couldn't. What's going on here. I cannot figure out what the problem is... Thank you