Commit 7803fb068b22bd1c446eec3c400ff619746284b3
- Diff rendering mode:
- inline
- side by side
gio/gregistrystorage.c
(7 / 8)
|   | |||
| 43 | 43 | ||
| 44 | 44 | struct _GRegistryStoragePrivate | |
| 45 | 45 | { | |
| 46 | char *root_key_name; | ||
| 46 | char *base; | ||
| 47 | 47 | }; | |
| 48 | 48 | ||
| 49 | 49 | static void trace (const char *format, ...); | |
| … | … | ||
| 183 | 183 | ||
| 184 | 184 | result = RegSetValueExA (key, value_name, 0, value_type, value_data, value_data_size); | |
| 185 | 185 | if (result != ERROR_SUCCESS) | |
| 186 | g_warning ("gregistrystorage: setting value %s\%s\\%s failed.\n", self->priv->root_key_name, | ||
| 186 | g_warning ("gregistrystorage: setting value %s\%s\\%s failed.\n", self->priv->base, | ||
| 187 | 187 | key_path, value_name); | |
| 188 | 188 | ||
| 189 | 189 | RegCloseKey (key); | |
| … | … | ||
| 203 | 203 | LONG result; | |
| 204 | 204 | HKEY root_key; | |
| 205 | 205 | ||
| 206 | result = RegCreateKeyExA (HKEY_CURRENT_USER, self->priv->root_key_name, 0, NULL, 0, | ||
| 206 | result = RegCreateKeyExA (HKEY_CURRENT_USER, self->priv->base, 0, NULL, 0, | ||
| 207 | 207 | KEY_WRITE, NULL, &root_key, NULL); | |
| 208 | 208 | if (result != ERROR_SUCCESS) { | |
| 209 | trace ("Error creating key %s.\n", self->priv->root_key_name); | ||
| 209 | trace ("Error creating key %s.\n", self->priv->base); | ||
| 210 | 210 | /* FIXME: what would dconf do? pretend that the value was set, but then notify that it was unset | |
| 211 | 211 | * again after. */ | |
| 212 | 212 | return; | |
| … | … | ||
| 358 | 358 | const gchar *variant_type = g_variant_type_peek_string (expected_type); | |
| 359 | 359 | GVariant *variant; | |
| 360 | 360 | ||
| 361 | key_path = parse_key (key, self->priv->root_key_name, &value_name); | ||
| 361 | key_path = parse_key (key, self->priv->base, &value_name); | ||
| 362 | 362 | trace ("Reading key %s / %s\n", key_path, value_name); | |
| 363 | 363 | ||
| 364 | 364 | result = RegOpenKeyExA (HKEY_CURRENT_USER, key_path, 0, KEY_READ, ®istry_key); | |
| … | … | ||
| 421 | 421 | { | |
| 422 | 422 | GRegistryStorage *self = G_REGISTRY_STORAGE (object); | |
| 423 | 423 | ||
| 424 | g_free (self->priv->root_key_name); | ||
| 424 | g_free (self->priv->base); | ||
| 425 | 425 | } | |
| 426 | 426 | ||
| 427 | 427 | static void | |
| … | … | ||
| 447 | 447 | G_TYPE_INSTANCE_GET_PRIVATE (self, G_TYPE_REGISTRY_STORAGE, | |
| 448 | 448 | GRegistryStoragePrivate); | |
| 449 | 449 | ||
| 450 | self->priv->root_key_name = g_strdup_printf ("Software\\%s", | ||
| 451 | g_get_prgname ()); | ||
| 450 | self->priv->base = g_strdup_printf ("Software\\%s", g_get_prgname ()); | ||
| 452 | 451 | } | |
| 453 | 452 | ||
| 454 | 453 | static void |
Comments
Add a new comment:
Login or create an account to post a comment
Add your comment
Please log in to comment

