annotate oldXMenu/XDestAssoc.c @ 106911:497e3aa2f614

Fix bug#5395: typing '#' in an empty C buffer throws "args out of range". * progmodes/cc-defs.el: (c-set-cpp-delimiters, c-clear-cpp-delimiters): Check for EOB playing the role of delimiter.
author Alan Mackenzie <acm@muc.de>
date Tue, 19 Jan 2010 22:10:19 +0000
parents fec5e03aaf59
children ec58e5c426ef 5cc91198ffb2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25858
Dave Love <fx@gnu.org>
parents:
diff changeset
1 /* Copyright Massachusetts Institute of Technology 1985 */
Dave Love <fx@gnu.org>
parents:
diff changeset
2
76133
995b45abe69d Remove license text in favour of including copyright.h, as was done in
Glenn Morris <rgm@gnu.org>
parents: 75348
diff changeset
3 #include "copyright.h"
995b45abe69d Remove license text in favour of including copyright.h, as was done in
Glenn Morris <rgm@gnu.org>
parents: 75348
diff changeset
4
25858
Dave Love <fx@gnu.org>
parents:
diff changeset
5
Dave Love <fx@gnu.org>
parents:
diff changeset
6 #include <X11/Xlib.h>
Dave Love <fx@gnu.org>
parents:
diff changeset
7 #include "X10.h"
Dave Love <fx@gnu.org>
parents:
diff changeset
8
Dave Love <fx@gnu.org>
parents:
diff changeset
9 /*
Dave Love <fx@gnu.org>
parents:
diff changeset
10 * XDestroyAssocTable - Destroy (free the memory associated with)
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 25858
diff changeset
11 * an XAssocTable.
25858
Dave Love <fx@gnu.org>
parents:
diff changeset
12 */
Dave Love <fx@gnu.org>
parents:
diff changeset
13 XDestroyAssocTable(table)
Dave Love <fx@gnu.org>
parents:
diff changeset
14 register XAssocTable *table;
Dave Love <fx@gnu.org>
parents:
diff changeset
15 {
Dave Love <fx@gnu.org>
parents:
diff changeset
16 register int i;
Dave Love <fx@gnu.org>
parents:
diff changeset
17 register XAssoc *bucket;
Dave Love <fx@gnu.org>
parents:
diff changeset
18 register XAssoc *Entry, *entry_next;
Dave Love <fx@gnu.org>
parents:
diff changeset
19
Dave Love <fx@gnu.org>
parents:
diff changeset
20 /* Free the buckets. */
Dave Love <fx@gnu.org>
parents:
diff changeset
21 for (i = 0; i < table->size; i++) {
Dave Love <fx@gnu.org>
parents:
diff changeset
22 bucket = &table->buckets[i];
Dave Love <fx@gnu.org>
parents:
diff changeset
23 for (
Dave Love <fx@gnu.org>
parents:
diff changeset
24 Entry = bucket->next;
Dave Love <fx@gnu.org>
parents:
diff changeset
25 Entry != bucket;
Dave Love <fx@gnu.org>
parents:
diff changeset
26 Entry = entry_next
Dave Love <fx@gnu.org>
parents:
diff changeset
27 ) {
Dave Love <fx@gnu.org>
parents:
diff changeset
28 entry_next = Entry->next;
Dave Love <fx@gnu.org>
parents:
diff changeset
29 free((char *)Entry);
Dave Love <fx@gnu.org>
parents:
diff changeset
30 }
Dave Love <fx@gnu.org>
parents:
diff changeset
31 }
Dave Love <fx@gnu.org>
parents:
diff changeset
32
Dave Love <fx@gnu.org>
parents:
diff changeset
33 /* Free the bucket array. */
Dave Love <fx@gnu.org>
parents:
diff changeset
34 free((char *)table->buckets);
Dave Love <fx@gnu.org>
parents:
diff changeset
35
Dave Love <fx@gnu.org>
parents:
diff changeset
36 /* Free the table. */
Dave Love <fx@gnu.org>
parents:
diff changeset
37 free((char *)table);
Dave Love <fx@gnu.org>
parents:
diff changeset
38 }
Dave Love <fx@gnu.org>
parents:
diff changeset
39
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
40 /* arch-tag: a536bf02-8d63-45f2-8c1a-c7f9fd4da2cf
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
41 (do not change this comment) */