in idl_intersection. It may lose precision in a subsequent union.
}
/* If a range completely covers the list, the result is
- * just the list. If idmin to idmax is contiguous, just
- * turn it into a range.
+ * just the list.
*/
if ( BDB_IDL_IS_RANGE( b )
&& BDB_IDL_RANGE_FIRST( b ) <= BDB_IDL_FIRST( a )
&& BDB_IDL_RANGE_LAST( b ) >= BDB_IDL_LLAST( a ) ) {
- if (idmax - idmin + 1 == a[0])
- {
- a[0] = NOID;
- a[1] = idmin;
- a[2] = idmax;
- }
goto done;
}
}
/* If a range completely covers the list, the result is
- * just the list. If idmin to idmax is contiguous, just
- * turn it into a range.
+ * just the list.
*/
if ( MDB_IDL_IS_RANGE( b )
&& MDB_IDL_RANGE_FIRST( b ) <= MDB_IDL_FIRST( a )
&& MDB_IDL_RANGE_LAST( b ) >= MDB_IDL_LLAST( a ) ) {
- if (idmax - idmin + 1 == a[0])
- {
- a[0] = NOID;
- a[1] = idmin;
- a[2] = idmax;
- }
goto done;
}