diff options
author | Miles Bader <miles@gnu.org> | 1996-09-23 16:48:42 +0000 |
---|---|---|
committer | Miles Bader <miles@gnu.org> | 1996-09-23 16:48:42 +0000 |
commit | e121bc6643df2188a56e4e649565591d928ef148 (patch) | |
tree | 0af97ec039153e5a556daf864dcbc4668bcdde39 /libtrivfs | |
parent | b0a5e83c1b78bda82bc3424412364c740dabaaac (diff) |
(trivfs_S_fsys_get_options):
Initialize ARGZ with the program name, and call trivfs_append_args instead
of trivfs_get_options.
Diffstat (limited to 'libtrivfs')
-rw-r--r-- | libtrivfs/fsys-get-options.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/libtrivfs/fsys-get-options.c b/libtrivfs/fsys-get-options.c index aa3b3374..53fc485d 100644 --- a/libtrivfs/fsys-get-options.c +++ b/libtrivfs/fsys-get-options.c @@ -18,6 +18,7 @@ along with the GNU Hurd; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ +#include <argz.h> #include <hurd/fshelp.h> #include "priv.h" @@ -29,16 +30,22 @@ trivfs_S_fsys_get_options (struct trivfs_control *fsys, char **data, mach_msg_type_number_t *len) { error_t err; - char *argz; - size_t argz_len; + char *argz = 0; + size_t argz_len = 0; if (! fsys) return EOPNOTSUPP; - err = trivfs_get_options (fsys, &argz, &argz_len); + err = argz_add (&argz, &argz_len, program_invocation_name); + if (err) + return err; + + err = trivfs_append_args (fsys, &argz, &argz_len); if (! err) /* Put ARGZ into vm_alloced memory for the return trip. */ err = fshelp_return_malloced_buffer (argz, argz_len, data, len); + else + free (argz); return err; } |