Best way to use saveCookie and craft.request.getCookie('location')
You should probably be using something like this:

    $cookie = new HttpCookie($name, $value);
    $cookie-&gt;expire = time() + 3600;

    craft()-&gt;request-&gt;getCookies()-&gt;add($cookie-&gt;name, $cookie);


Setting whatever properties you want on HttpCookie.

Using UserSessionService->saveCookie is meant mainly for Craft's session identity cookie, so it has some security checks it goes through saving the cookie that craft.request.getCookie('location') is probably failing.