I think I should have explained a little better. If I start with a fresh user profile (after deleting ~/.config/transmission), then the default download directory always seems to be ~/Downloads on the first run (regardless of what I set XDG_DOWNLOAD_DIR to), whereas the watch directory is always configured correctly as XDG_DOWNLOAD_DIR.
I thought initially that the string returned from g_get_user_special_dir was being misused, but you are right - it is being used correctly. I still can't figure out what is going on though.
I think I should have explained a little better. If I start with a fresh user profile (after deleting ~/.config/ transmission) , then the default download directory always seems to be ~/Downloads on the first run (regardless of what I set XDG_DOWNLOAD_DIR to), whereas the watch directory is always configured correctly as XDG_DOWNLOAD_DIR.
I thought initially that the string returned from g_get_user_ special_ dir was being misused, but you are right - it is being used correctly. I still can't figure out what is going on though.