* dcrt0.cc (dummy_autoload): Add load statement for RegDeleteValueA.
* external.cc (get_cygdrive_prefixes): New function. (cygwin_internal): Add CW_GET_CYGDRIVE_PREFIXES case. * path.cc (mount_info::read_cygdrive_info_from_registry): Read system cygdrive prefix if user one is undefined. (mount_info::write_cygdrive_info_to_registry): Write cygdrive prefix to the appropriate registry hive. Overwrite in-memory copy of cygdrive, if appropriate. (mount_info::remove_cygdrive_info_from_registry): New method. (mount_info::get_cygdrive_prefixes): New method. (cygwin_umount): Remove cygdrive prefix, if appropriate. * registry.cc (reg_key::killvalue): New method. * shared.h (class reg_key): Add killvalue, remove_cygdrive_info_to_registry, and get_cygdrive_prefixes declarations. * include/sys/cygwin.h (cygwin_getinfo_types): Add CW_GET_CYGDRIVE_PREFIXES.
This commit is contained in:
@ -247,6 +247,7 @@ public:
|
||||
int error () {return key == (HKEY) INVALID_HANDLE_VALUE;}
|
||||
|
||||
int kill (const char *child);
|
||||
int killvalue (const char *name);
|
||||
|
||||
HKEY get_key ();
|
||||
int get_int (const char *,int def);
|
||||
@ -336,6 +337,8 @@ public:
|
||||
struct mntent *getmntent (int x);
|
||||
|
||||
int write_cygdrive_info_to_registry (const char *cygdrive_prefix, unsigned flags);
|
||||
int remove_cygdrive_info_from_registry (const char *cygdrive_prefix, unsigned flags);
|
||||
int get_cygdrive_prefixes (char *user, char *system);
|
||||
|
||||
void import_v1_mounts ();
|
||||
|
||||
|
Reference in New Issue
Block a user