diff --git a/ChangeLog b/ChangeLog index 5f57427..abf3b27 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,10 @@ Tue Mar 22 07:01:37 CST 2005 Jeff Smith * src/extras/mdb-dump.c: * src/libmdb/data.c: Clean up some warnings + * src/libmdb/file.c: + * src/libmdb/kkd.c: + * src/libmdb/table.c: + * src/libmdb/write.c: Replace a few mdb_pg_get_int's with mdb_get_int's Sat Mar 19 06:34:00 CST 2005 Jeff Smith * src/libmdb/Makefile.am: diff --git a/src/libmdb/file.c b/src/libmdb/file.c index 105d495..4d06bb4 100644 --- a/src/libmdb/file.c +++ b/src/libmdb/file.c @@ -150,7 +150,7 @@ MdbHandle *mdb_open(const char *filename, MdbFileFlags flags) mdb_close(mdb); return NULL; } - mdb->f->jet_version = mdb_pg_get_int32(mdb, 0x14); + mdb->f->jet_version = mdb_get_int32(mdb->pg_buf, 0x14); if (IS_JET4(mdb)) { mdb->fmt = &MdbJet4Constants; } else if (IS_JET3(mdb)) { diff --git a/src/libmdb/kkd.c b/src/libmdb/kkd.c index ea72887..b1b7f12 100644 --- a/src/libmdb/kkd.c +++ b/src/libmdb/kkd.c @@ -29,7 +29,7 @@ ** KKD structures. */ -GArray *mdb_get_column_props(MdbCatalogEntry *entry, int start) +static GArray *mdb_get_column_props(MdbCatalogEntry *entry, int start) { int pos, cnt=0; int len, tmp, cplen; @@ -53,7 +53,7 @@ MdbHandle *mdb = entry->mdb; return entry->props; } -GHashTable *mdb_get_column_def(MdbCatalogEntry *entry, int start) +static GHashTable *mdb_get_column_def(MdbCatalogEntry *entry, int start) { GHashTable *hash = NULL; MdbHandle *mdb = entry->mdb; @@ -110,13 +110,13 @@ int rowid = entry->kkd_rowid; mdb_read_pg(mdb, entry->kkd_pg); - rows = mdb_pg_get_int16(mdb,8); + rows = mdb_get_int16(mdb->pg_buf, 8); fprintf(stdout,"number of rows = %d\n",rows); - kkd_start = mdb_pg_get_int16(mdb,10+rowid*2); + kkd_start = mdb_get_int16(mdb->pg_buf, 10+rowid*2); fprintf(stdout,"kkd start = %d %04x\n",kkd_start,kkd_start); kkd_end = mdb->fmt->pg_size; for (i=0;ipg_buf, 10+i*2); if (tmp < mdb->fmt->pg_size && tmp > kkd_start && tmp < kkd_end) { diff --git a/src/libmdb/table.c b/src/libmdb/table.c index 055dabe..c1eefe3 100644 --- a/src/libmdb/table.c +++ b/src/libmdb/table.c @@ -77,22 +77,23 @@ MdbTableDef *mdb_read_table(MdbCatalogEntry *entry) MdbHandle *mdb = entry->mdb; MdbFormatConstants *fmt = mdb->fmt; int len, row_start, pg_row; - char *buf; + char *buf, *pg_buf = mdb->pg_buf; mdb_read_pg(mdb, entry->table_pg); - if (mdb->pg_buf[0] != 0x02) /* not a valid table def page */ + if (pg_buf[0] != 0x02) /* not a valid table def page */ return NULL; table = mdb_alloc_tabledef(entry); - len = mdb_pg_get_int16(mdb,8); + len = mdb_get_int16(pg_buf, 8); + + table->num_rows = mdb_get_int32(pg_buf, fmt->tab_num_rows_offset); + table->num_var_cols = mdb_get_int16(pg_buf, fmt->tab_num_cols_offset-2); + table->num_cols = mdb_get_int16(pg_buf, fmt->tab_num_cols_offset); + table->num_idxs = mdb_get_int32(pg_buf, fmt->tab_num_idxs_offset); + table->num_real_idxs = mdb_get_int32(pg_buf, fmt->tab_num_ridxs_offset); - table->num_rows = mdb_pg_get_int32(mdb, fmt->tab_num_rows_offset); - table->num_var_cols = mdb_pg_get_int16(mdb, fmt->tab_num_cols_offset-2); - table->num_cols = mdb_pg_get_int16(mdb, fmt->tab_num_cols_offset); - table->num_idxs = mdb_pg_get_int32(mdb, fmt->tab_num_idxs_offset); - table->num_real_idxs = mdb_pg_get_int32(mdb, fmt->tab_num_ridxs_offset); /* grab a copy of the usage map */ - pg_row = mdb_pg_get_int32(mdb, fmt->tab_usage_map_offset); + pg_row = mdb_get_int32(pg_buf, fmt->tab_usage_map_offset); mdb_find_pg_row(mdb, pg_row, &buf, &row_start, &(table->map_sz)); table->usage_map = g_memdup(buf + row_start, table->map_sz); if (mdb_get_option(MDB_DEBUG_USAGE)) @@ -101,13 +102,13 @@ MdbTableDef *mdb_read_table(MdbCatalogEntry *entry) pg_row >> 8, pg_row & 0xff, row_start, table->map_sz); /* grab a copy of the free space page map */ - pg_row = mdb_pg_get_int32(mdb, fmt->tab_free_map_offset); + pg_row = mdb_get_int32(pg_buf, fmt->tab_free_map_offset); mdb_find_pg_row(mdb, pg_row, &buf, &row_start, &(table->freemap_sz)); table->free_usage_map = g_memdup(buf + row_start, table->freemap_sz); mdb_debug(MDB_DEBUG_USAGE,"free map found on page %ld row %d start %d len %d\n", pg_row >> 8, pg_row & 0xff, row_start, table->freemap_sz); - table->first_data_pg = mdb_pg_get_int16(mdb, fmt->tab_first_dpg_offset); + table->first_data_pg = mdb_get_int16(pg_buf, fmt->tab_first_dpg_offset); return table; } @@ -135,7 +136,7 @@ int read_pg_if(MdbHandle *mdb, int *cur_pos, int offset) { if (*cur_pos + offset >= mdb->fmt->pg_size) { - mdb_read_pg(mdb, mdb_pg_get_int32(mdb,4)); + mdb_read_pg(mdb, mdb_get_int32(mdb->pg_buf,4)); *cur_pos = 8 - (mdb->fmt->pg_size - (*cur_pos)); return 1; } @@ -175,7 +176,7 @@ read_pg_if_n(MdbHandle *mdb, unsigned char *buf, int *cur_pos, int len) } else { int half = mdb->fmt->pg_size - *cur_pos; memcpy(buf, &mdb->pg_buf[*cur_pos], half); - mdb_read_pg(mdb, mdb_pg_get_int32(mdb,4)); + mdb_read_pg(mdb, mdb_get_int32(mdb->pg_buf,4)); memcpy(buf + half, &mdb->pg_buf[8], len - half); *cur_pos = 8 - half; return 1; diff --git a/src/libmdb/write.c b/src/libmdb/write.c index 979318b..eaabb9a 100644 --- a/src/libmdb/write.c +++ b/src/libmdb/write.c @@ -112,7 +112,7 @@ mdb_crack_row4(MdbHandle *mdb, int row_start, int row_end, unsigned int bitmask_ unsigned int i; for (i=0; ipg_buf, row_end - bitmask_sz - 3 - (i*2)); } } @@ -180,7 +180,7 @@ mdb_crack_row(MdbTableDef *table, int row_start, int row_end, MdbField *fields) } if (IS_JET4(mdb)) { - row_cols = mdb_pg_get_int16(mdb, row_start); + row_cols = mdb_get_int16(mdb->pg_buf, row_start); col_count_size = 2; } else { row_cols = pg_buf[row_start]; @@ -192,7 +192,7 @@ mdb_crack_row(MdbTableDef *table, int row_start, int row_end, MdbField *fields) /* read table of variable column locations */ row_var_cols = IS_JET4(mdb) ? - mdb_pg_get_int16(mdb, row_end - bitmask_sz - 1) : + mdb_get_int16(mdb->pg_buf, row_end - bitmask_sz - 1) : pg_buf[row_end - bitmask_sz]; var_col_offsets = (unsigned int *)g_malloc((row_var_cols+1)*sizeof(int)); if (table->num_var_cols > 0) { @@ -434,9 +434,9 @@ mdb_pg_get_freespace(MdbHandle *mdb) int rows, free_start, free_end; int row_count_offset = mdb->fmt->row_count_offset; - rows = mdb_pg_get_int16(mdb, row_count_offset); + rows = mdb_get_int16(mdb->pg_buf, row_count_offset); free_start = row_count_offset + 2 + (rows * 2); - free_end = mdb_pg_get_int16(mdb, row_count_offset + (rows * 2)); + free_end = mdb_get_int16(mdb->pg_buf, row_count_offset + (rows * 2)); mdb_debug(MDB_DEBUG_WRITE,"free space left on page = %d", free_end - free_start); return (free_end - free_start); } @@ -617,7 +617,7 @@ mdb_add_row_to_pg(MdbTableDef *table, unsigned char *row_buffer, int new_row_siz } else { /* is not a temp table */ new_pg = mdb_new_data_pg(entry); - num_rows = mdb_pg_get_int16(mdb, fmt->row_count_offset); + num_rows = mdb_get_int16(mdb->pg_buf, fmt->row_count_offset); pos = fmt->pg_size; /* copy existing rows */ @@ -729,7 +729,7 @@ int i, pos; mdb_debug(MDB_DEBUG_WRITE,"updating row %d on page %lu", row, (unsigned long) table->cur_phys_pg); new_pg = mdb_new_data_pg(entry); - num_rows = mdb_pg_get_int16(mdb, rco); + num_rows = mdb_get_int16(mdb->pg_buf, rco); _mdb_put_int16(new_pg, rco, num_rows); pos = pg_size;