projects
/
openvswitch
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
vswitchd: Respect other_config:stp-enable port setting.
[openvswitch]
/
ovsdb
/
row.c
diff --git
a/ovsdb/row.c
b/ovsdb/row.c
index dece90fd9d91665e56b0f3245e3091b25116ef0f..450c3274543230bc2cd3170b9412b1997d67dfa8 100644
(file)
--- a/
ovsdb/row.c
+++ b/
ovsdb/row.c
@@
-1,4
+1,4
@@
-/* Copyright (c) 2009, 2010, 2011
Nicira Networks
+/* Copyright (c) 2009, 2010, 2011
, 2012 Nicira, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@
-31,10
+31,12
@@
static struct ovsdb_row *
allocate_row(const struct ovsdb_table *table)
{
size_t n_fields = shash_count(&table->schema->columns);
allocate_row(const struct ovsdb_table *table)
{
size_t n_fields = shash_count(&table->schema->columns);
+ size_t n_indexes = table->schema->n_indexes;
size_t row_size = (offsetof(struct ovsdb_row, fields)
size_t row_size = (offsetof(struct ovsdb_row, fields)
- + sizeof(struct ovsdb_datum) * n_fields);
+ + sizeof(struct ovsdb_datum) * n_fields
+ + sizeof(struct hmap_node) * n_indexes);
struct ovsdb_row *row = xmalloc(row_size);
struct ovsdb_row *row = xmalloc(row_size);
- row->table =
(struct ovsdb_table *) table
;
+ row->table =
CONST_CAST(struct ovsdb_table *, table)
;
row->txn_row = NULL;
list_init(&row->src_refs);
list_init(&row->dst_refs);
row->txn_row = NULL;
list_init(&row->src_refs);
list_init(&row->dst_refs);
@@
-345,7
+347,7
@@
ovsdb_row_hash_destroy(struct ovsdb_row_hash *rh, bool destroy_rows)
HMAP_FOR_EACH_SAFE (node, next, hmap_node, &rh->rows) {
hmap_remove(&rh->rows, &node->hmap_node);
if (destroy_rows) {
HMAP_FOR_EACH_SAFE (node, next, hmap_node, &rh->rows) {
hmap_remove(&rh->rows, &node->hmap_node);
if (destroy_rows) {
- ovsdb_row_destroy(
(struct ovsdb_row *) node->row
);
+ ovsdb_row_destroy(
CONST_CAST(struct ovsdb_row *, node->row)
);
}
free(node);
}
}
free(node);
}