mirror of
https://github.com/mdbtools/mdbtools.git
synced 2025-11-26 02:09:49 +08:00
signature change to mdb_open()
This commit is contained in:
@@ -8,7 +8,7 @@ extern int main_show_debug;
|
||||
void
|
||||
gmdb_file_open(gchar *file_path)
|
||||
{
|
||||
mdb = mdb_open(file_path);
|
||||
mdb = mdb_open(file_path, MDB_NOFLAGS);
|
||||
if (!mdb) {
|
||||
gmdb_info_msg("Unable to open file.");
|
||||
return;
|
||||
|
||||
@@ -107,7 +107,7 @@ gmdb_file_open(gchar *file_path)
|
||||
int i;
|
||||
|
||||
gmdb_reset_widgets();
|
||||
mdb = mdb_open(file_path);
|
||||
mdb = mdb_open(file_path, MDB_NOFLAGS);
|
||||
if (!mdb) {
|
||||
gnome_warning_dialog("Unable to open file.");
|
||||
return;
|
||||
|
||||
@@ -93,7 +93,18 @@ int ret;
|
||||
} while ((dir = strtok(NULL, ":")));
|
||||
return -1;
|
||||
}
|
||||
MdbHandle *_mdb_open(char *filename, gboolean writable)
|
||||
/**
|
||||
* mdb_open:
|
||||
* @filename: path to MDB (database) file
|
||||
* @flags: MDB_NOFLAGS for read-only, MDB_WRITABLE for read/write
|
||||
*
|
||||
* Opens an MDB file and returns an MdbHandle to it. MDB File may be relative
|
||||
* to the current directory, a full path to the file, or relative to a
|
||||
* component of $MDBPATH.
|
||||
*
|
||||
* Return value: pointer to MdbHandle structure.
|
||||
**/
|
||||
MdbHandle *mdb_open(char *filename, MdbFileFlags flags)
|
||||
{
|
||||
MdbHandle *mdb;
|
||||
int bufsize;
|
||||
@@ -117,7 +128,7 @@ MdbFile *f;
|
||||
}
|
||||
}
|
||||
//strcpy(f->filename, filename);
|
||||
if (writable) {
|
||||
if (flags & MDB_WRITABLE) {
|
||||
f->writable = TRUE;
|
||||
f->fd = open(f->filename,O_RDWR);
|
||||
} else {
|
||||
@@ -149,21 +160,14 @@ MdbFile *f;
|
||||
f->refs++;
|
||||
return mdb;
|
||||
}
|
||||
/**
|
||||
* mdb_open:
|
||||
* @filename: path to MDB (database) file
|
||||
*
|
||||
* Opens an MDB file and returns an MdbHandle to it. MDB File may be relative
|
||||
* to the current directory, a full path to the file, or relative to a
|
||||
* component of $MDBPATH.
|
||||
*
|
||||
* Return value: pointer to MdbHandle structure.
|
||||
**/
|
||||
MdbHandle *mdb_open(char *filename)
|
||||
{
|
||||
return _mdb_open(filename, FALSE);
|
||||
}
|
||||
|
||||
/**
|
||||
* mdb_close:
|
||||
* @mdb: Handle to open MDB database file
|
||||
*
|
||||
* Dereferences MDB file, closes if reference count is 0, and destroys handle.
|
||||
*
|
||||
**/
|
||||
void
|
||||
mdb_close(MdbHandle *mdb)
|
||||
{
|
||||
@@ -175,6 +179,15 @@ mdb_close(MdbHandle *mdb)
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
* mdb_clone_handle:
|
||||
* @mdb: Handle to open MDB database file
|
||||
*
|
||||
* Clones an existing database handle. Cloned handle shares the file descriptor
|
||||
* but has it's own page buffer, page position, and similar internal variables.
|
||||
*
|
||||
* Return value: new handle to the database.
|
||||
*/
|
||||
MdbHandle *mdb_clone_handle(MdbHandle *mdb)
|
||||
{
|
||||
MdbHandle *newmdb;
|
||||
|
||||
@@ -152,12 +152,12 @@ wordexp_t words;
|
||||
|
||||
#endif
|
||||
|
||||
if (!(sql->mdb = mdb_open(db_namep))) {
|
||||
if (!(sql->mdb = mdb_open(db_namep, MDB_NOFLAGS))) {
|
||||
if (!strstr(db_namep, ".mdb")) {
|
||||
char *tmpstr = (char *) malloc(strlen(db_namep)+5);
|
||||
strcpy(tmpstr,db_namep);
|
||||
strcat(tmpstr,".mdb");
|
||||
if (!(sql->mdb = mdb_open(tmpstr))) {
|
||||
if (!(sql->mdb = mdb_open(tmpstr, MDB_NOFLAGS))) {
|
||||
fail++;
|
||||
}
|
||||
free(tmpstr);
|
||||
|
||||
@@ -49,7 +49,7 @@ int started;
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
mdb = mdb_open (argv [1]);
|
||||
mdb = mdb_open (argv [1], MDB_NOFLAGS);
|
||||
|
||||
mdb_read_catalog (mdb, MDB_TABLE);
|
||||
|
||||
|
||||
@@ -65,7 +65,7 @@ int opt;
|
||||
|
||||
/* open the database */
|
||||
|
||||
mdb = mdb_open (argv[optind]);
|
||||
mdb = mdb_open (argv[optind], MDB_NOFLAGS);
|
||||
|
||||
/* read the catalog */
|
||||
|
||||
|
||||
@@ -115,7 +115,7 @@ main(int argc, char **argv)
|
||||
|
||||
mdb_init();
|
||||
|
||||
if (!(mdb = mdb_open(argv[optind]))) {
|
||||
if (!(mdb = mdb_open(argv[optind], MDB_NOFLAGS))) {
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
||||
@@ -53,7 +53,7 @@ FILE *cfile;
|
||||
|
||||
/* open the database */
|
||||
|
||||
mdb = mdb_open (argv[1]);
|
||||
mdb = mdb_open (argv[1], MDB_NOFLAGS);
|
||||
if (!mdb) {
|
||||
mdb_exit();
|
||||
exit(1);
|
||||
|
||||
@@ -191,7 +191,7 @@ main(int argc, char **argv)
|
||||
|
||||
mdb_init();
|
||||
|
||||
if (!(mdb = _mdb_open(argv[optind], TRUE))) {
|
||||
if (!(mdb = mdb_open(argv[optind], MDB_WRITABLE))) {
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ main(int argc, char **argv)
|
||||
|
||||
mdb_init();
|
||||
|
||||
if (!(mdb = mdb_open(argv[optind]))) {
|
||||
if (!(mdb = mdb_open(argv[optind], MDB_NOFLAGS))) {
|
||||
exit(1);
|
||||
}
|
||||
mdb_read_catalog(mdb, MDB_TABLE);
|
||||
|
||||
@@ -68,7 +68,7 @@ main (int argc, char **argv)
|
||||
|
||||
/* open the database */
|
||||
|
||||
mdb = mdb_open (argv[optind]);
|
||||
mdb = mdb_open (argv[optind], MDB_NOFLAGS);
|
||||
if (argc - optind >= 2) {
|
||||
if (!mdb_set_default_backend(mdb, argv[optind + 1])) {
|
||||
fprintf(stderr,"Invalid backend type\n");
|
||||
|
||||
@@ -58,7 +58,7 @@ int opt;
|
||||
mdb_init();
|
||||
|
||||
/* open the database */
|
||||
if (!(mdb = mdb_open (argv[optind]))) {
|
||||
if (!(mdb = mdb_open (argv[optind], MDB_NOFLAGS))) {
|
||||
fprintf(stderr,"Couldn't open database.\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ main(int argc, char **argv)
|
||||
|
||||
mdb_init();
|
||||
|
||||
if (!(mdb = mdb_open(argv[optind]))) {
|
||||
if (!(mdb = mdb_open(argv[optind], MDB_NOFLAGS))) {
|
||||
fprintf(stderr,_("Error: unable to open file %s\n"),argv[optind]);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ main(int argc, char **argv)
|
||||
|
||||
mdb_init();
|
||||
|
||||
mdb = mdb_open(argv[1]);
|
||||
mdb = mdb_open(argv[1], MDB_NOFLAGS);
|
||||
|
||||
mdb_dump_catalog(mdb,(argc > 2) ? atoi(argv[2]) : MDB_TABLE);
|
||||
|
||||
|
||||
@@ -34,7 +34,7 @@ MdbTableDef *table;
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
mdb = mdb_open(argv[1]);
|
||||
mdb = mdb_open(argv[1], MDB_NOFLAGS);
|
||||
|
||||
mdb_read_catalog(mdb, MDB_TABLE);
|
||||
|
||||
|
||||
@@ -33,7 +33,7 @@ int page, start, stop;
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
mdb = mdb_open(argv[1]);
|
||||
mdb = mdb_open(argv[1], MDB_NOFLAGS);
|
||||
|
||||
mdb_read_catalog(mdb, MDB_TABLE);
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ unsigned char *map_buf;
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
mdb = mdb_open(argv[1]);
|
||||
mdb = mdb_open(argv[1], MDB_NOFLAGS);
|
||||
|
||||
mdb_read_pg (mdb, 1);
|
||||
row_start = mdb_get_int16(mdb, (mdb->fmt->row_count_offset + 2));
|
||||
|
||||
@@ -40,7 +40,7 @@ int found = 0;
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
if (!(mdb = mdb_open(argv[1]))) {
|
||||
if (!(mdb = mdb_open(argv[1], MDB_NOFLAGS))) {
|
||||
fprintf(stderr,"Unable to open database.\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
mdb = mdb_open(argv[1]);
|
||||
mdb = mdb_open(argv[1], MDB_NOFLAGS);
|
||||
|
||||
mdb_read_pg(mdb, MDB_CATALOG_PG);
|
||||
rows = mdb_catalog_rows(mdb);
|
||||
|
||||
@@ -39,7 +39,7 @@ char *sargname = NULL;
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
mdb = mdb_open(argv[1]);
|
||||
mdb = mdb_open(argv[1], MDB_NOFLAGS);
|
||||
dot = strchr(argv[2],'.');
|
||||
if (argc>3) sargname = argv[3];
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ int found = 0;
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
mdb = mdb_open(argv[1]);
|
||||
mdb = mdb_open(argv[1], MDB_NOFLAGS);
|
||||
|
||||
mdb_read_catalog(mdb, MDB_TABLE);
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ MdbTableDef *table;
|
||||
|
||||
mdb_init();
|
||||
|
||||
if (!(mdb = mdb_open(MDB_FILE))) {
|
||||
if (!(mdb = mdb_open(MDB_FILE, MDB_NOFLAGS))) {
|
||||
exit(1);
|
||||
}
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ int len;
|
||||
}
|
||||
|
||||
mdb_init();
|
||||
mdb = _mdb_open(argv[1], TRUE);
|
||||
mdb = mdb_open(argv[1], MDB_WRITABLE);
|
||||
tabname = argv[2];
|
||||
sargname = argv[3];
|
||||
updstr = strdup(argv[4]);
|
||||
|
||||
Reference in New Issue
Block a user