comparison src/specifier.c @ 4962:e813cf16c015

merge
author Ben Wing <ben@xemacs.org>
date Mon, 01 Feb 2010 05:29:05 -0600
parents 19a72041c5ed 6ef8256a020a
children 16112448d484
comparison
equal deleted inserted replaced
4961:b90f8cf474e0 4962:e813cf16c015
309 } 309 }
310 } 310 }
311 #endif /* not NEW_GC */ 311 #endif /* not NEW_GC */
312 312
313 static int 313 static int
314 specifier_equal (Lisp_Object obj1, Lisp_Object obj2, int depth) 314 specifier_equal (Lisp_Object obj1, Lisp_Object obj2, int depth, int foldcase)
315 { 315 {
316 Lisp_Specifier *s1 = XSPECIFIER (obj1); 316 Lisp_Specifier *s1 = XSPECIFIER (obj1);
317 Lisp_Specifier *s2 = XSPECIFIER (obj2); 317 Lisp_Specifier *s2 = XSPECIFIER (obj2);
318 int retval; 318 int retval;
319 Lisp_Object old_inhibit_quit = Vinhibit_quit; 319 Lisp_Object old_inhibit_quit = Vinhibit_quit;
323 Vinhibit_quit = Qt; 323 Vinhibit_quit = Qt;
324 324
325 depth++; 325 depth++;
326 retval = 326 retval =
327 (s1->methods == s2->methods && 327 (s1->methods == s2->methods &&
328 internal_equal (s1->global_specs, s2->global_specs, depth) && 328 internal_equal_0 (s1->global_specs, s2->global_specs, depth, foldcase) &&
329 internal_equal (s1->device_specs, s2->device_specs, depth) && 329 internal_equal_0 (s1->device_specs, s2->device_specs, depth, foldcase) &&
330 internal_equal (s1->frame_specs, s2->frame_specs, depth) && 330 internal_equal_0 (s1->frame_specs, s2->frame_specs, depth, foldcase) &&
331 internal_equal (s1->window_specs, s2->window_specs, depth) && 331 internal_equal_0 (s1->window_specs, s2->window_specs, depth, foldcase) &&
332 internal_equal (s1->buffer_specs, s2->buffer_specs, depth) && 332 internal_equal_0 (s1->buffer_specs, s2->buffer_specs, depth, foldcase) &&
333 internal_equal (s1->fallback, s2->fallback, depth)); 333 internal_equal_0 (s1->fallback, s2->fallback, depth, foldcase));
334 334
335 if (retval && HAS_SPECMETH_P (s1, equal)) 335 if (retval && HAS_SPECMETH_P (s1, equal))
336 retval = SPECMETH (s1, equal, (obj1, obj2, depth - 1)); 336 retval = SPECMETH (s1, equal, (obj1, obj2, depth - 1));
337 337
338 Vinhibit_quit = old_inhibit_quit; 338 Vinhibit_quit = old_inhibit_quit;