Mercurial > hg > xemacs-beta
diff src/database.c @ 4985:358aa3bb603f
Automatic merge
| author | Ben Wing <ben@xemacs.org> |
|---|---|
| date | Fri, 05 Feb 2010 12:12:28 -0600 |
| parents | 4aebb0131297 |
| children | 97c45e3ad810 |
line wrap: on
line diff
--- a/src/database.c Fri Feb 05 12:11:12 2010 -0600 +++ b/src/database.c Fri Feb 05 12:12:28 2010 -0600 @@ -340,9 +340,8 @@ { datum keydatum, valdatum; - TO_EXTERNAL_FORMAT (LISP_STRING, key, - ALLOCA, (keydatum.dptr, keydatum.dsize), - db->coding_system); + LISP_STRING_TO_SIZED_EXTERNAL (key, keydatum.dptr, keydatum.dsize, + db->coding_system); valdatum = dbm_fetch (db->dbm_handle, keydatum); return (valdatum.dptr @@ -357,12 +356,10 @@ { datum keydatum, valdatum; - TO_EXTERNAL_FORMAT (LISP_STRING, val, - ALLOCA, (valdatum.dptr, valdatum.dsize), - db->coding_system); - TO_EXTERNAL_FORMAT (LISP_STRING, key, - ALLOCA, (keydatum.dptr, keydatum.dsize), - db->coding_system); + LISP_STRING_TO_SIZED_EXTERNAL (val, valdatum.dptr, valdatum.dsize, + db->coding_system); + LISP_STRING_TO_SIZED_EXTERNAL (key, keydatum.dptr, keydatum.dsize, + db->coding_system); return !dbm_store (db->dbm_handle, keydatum, valdatum, NILP (replace) ? DBM_INSERT : DBM_REPLACE); @@ -373,9 +370,8 @@ { datum keydatum; - TO_EXTERNAL_FORMAT (LISP_STRING, key, - ALLOCA, (keydatum.dptr, keydatum.dsize), - db->coding_system); + LISP_STRING_TO_SIZED_EXTERNAL (key, keydatum.dptr, keydatum.dsize, + db->coding_system); return dbm_delete (db->dbm_handle, keydatum); } @@ -462,9 +458,8 @@ xzero (keydatum); xzero (valdatum); - TO_EXTERNAL_FORMAT (LISP_STRING, key, - ALLOCA, (keydatum.data, keydatum.size), - db->coding_system); + LISP_STRING_TO_SIZED_EXTERNAL (key, keydatum.data, keydatum.size, + db->coding_system); #if DB_VERSION_MAJOR == 1 status = db->db_handle->get (db->db_handle, &keydatum, &valdatum, 0); @@ -498,12 +493,10 @@ xzero (keydatum); xzero (valdatum); - TO_EXTERNAL_FORMAT (LISP_STRING, key, - ALLOCA, (keydatum.data, keydatum.size), - db->coding_system); - TO_EXTERNAL_FORMAT (LISP_STRING, val, - ALLOCA, (valdatum.data, valdatum.size), - db->coding_system); + LISP_STRING_TO_SIZED_EXTERNAL (key, keydatum.data, keydatum.size, + db->coding_system); + LISP_STRING_TO_SIZED_EXTERNAL (val, valdatum.data, valdatum.size, + db->coding_system); #if DB_VERSION_MAJOR == 1 status = db->db_handle->put (db->db_handle, &keydatum, &valdatum, NILP (replace) ? R_NOOVERWRITE : 0); @@ -526,9 +519,8 @@ /* DB Version 2 requires DBT's to be zeroed before use. */ xzero (keydatum); - TO_EXTERNAL_FORMAT (LISP_STRING, key, - ALLOCA, (keydatum.data, keydatum.size), - db->coding_system); + LISP_STRING_TO_SIZED_EXTERNAL (key, keydatum.data, keydatum.size, + db->coding_system); #if DB_VERSION_MAJOR == 1 status = db->db_handle->del (db->db_handle, &keydatum, 0); @@ -653,7 +645,7 @@ int modemask; int accessmask = 0; Lisp_Database *db = NULL; - char *filename; + Extbyte *filename; struct gcpro gcpro1, gcpro2; CHECK_STRING (file); @@ -661,9 +653,7 @@ file = Fexpand_file_name (file, Qnil); UNGCPRO; - TO_EXTERNAL_FORMAT (LISP_STRING, file, - C_STRING_ALLOCA, filename, - Qfile_name); + LISP_PATHNAME_CONVERT_OUT (file, filename); if (NILP (access_)) { @@ -671,16 +661,16 @@ } else { - char *acc; + Ibyte *acc; CHECK_STRING (access_); - acc = (char *) XSTRING_DATA (access_); + acc = XSTRING_DATA (access_); - if (strchr (acc, '+')) + if (qxestrchr (acc, '+')) accessmask |= O_CREAT; { - char *rp = strchr (acc, 'r'); - char *wp = strchr (acc, 'w'); + int rp = !!qxestrchr (acc, 'r'); + int wp = !!qxestrchr (acc, 'w'); if (rp && wp) accessmask |= O_RDWR; else if (wp) accessmask |= O_WRONLY; else accessmask |= O_RDONLY;
