Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: src/platform/update_engine/update_check_action.cc

Issue 1599029: update engine: 32- and 64-bit compile (Closed)
Patch Set: int32->int32_t, PRIi64, 80 cols for review Created 10 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2009 The Chromium OS Authors. All rights reserved. 1 // Copyright (c) 2009 The Chromium OS Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "update_engine/update_check_action.h" 5 #include "update_engine/update_check_action.h"
6 #include <inttypes.h>
6 #include <sstream> 7 #include <sstream>
7 8
8 #include <libxml/parser.h> 9 #include <libxml/parser.h>
9 #include <libxml/xpath.h> 10 #include <libxml/xpath.h>
10 #include <libxml/xpathInternals.h> 11 #include <libxml/xpathInternals.h>
11 12
12 #include "chromeos/obsolete_logging.h" 13 #include "chromeos/obsolete_logging.h"
13 #include "update_engine/action_pipe.h" 14 #include "update_engine/action_pipe.h"
14 #include "update_engine/utils.h" 15 #include "update_engine/utils.h"
15 16
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
165 xmlGetProp(node, ConstXMLStr(name))); 166 xmlGetProp(node, ConstXMLStr(name)));
166 string ret(reinterpret_cast<const char *>(str.get())); 167 string ret(reinterpret_cast<const char *>(str.get()));
167 return ret; 168 return ret;
168 } 169 }
169 170
170 // Parses a 64 bit base-10 int from a string and returns it. Returns 0 171 // Parses a 64 bit base-10 int from a string and returns it. Returns 0
171 // on error. If the string contains "0", that's indistinguishable from 172 // on error. If the string contains "0", that's indistinguishable from
172 // error. 173 // error.
173 off_t ParseInt(const string& str) { 174 off_t ParseInt(const string& str) {
174 off_t ret = 0; 175 off_t ret = 0;
175 176 int rc = sscanf(str.c_str(), "%" PRIi64, &ret);
176 int rc = sscanf(str.c_str(), "%lld", &ret);
177 if (rc < 1) { 177 if (rc < 1) {
178 // failure 178 // failure
179 return 0; 179 return 0;
180 } 180 }
181 return ret; 181 return ret;
182 } 182 }
183 } // namespace {} 183 } // namespace {}
184 184
185 // If the transfer was successful, this uses libxml2 to parse the response 185 // If the transfer was successful, this uses libxml2 to parse the response
186 // and fill in the appropriate fields of the output object. Also, notifies 186 // and fill in the appropriate fields of the output object. Also, notifies
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 output_object.hash = XmlGetProperty(updatecheck_node, "hash"); 255 output_object.hash = XmlGetProperty(updatecheck_node, "hash");
256 output_object.size = ParseInt(XmlGetProperty(updatecheck_node, "size")); 256 output_object.size = ParseInt(XmlGetProperty(updatecheck_node, "size"));
257 output_object.needs_admin = 257 output_object.needs_admin =
258 XmlGetProperty(updatecheck_node, "needsadmin") == "true"; 258 XmlGetProperty(updatecheck_node, "needsadmin") == "true";
259 output_object.prompt = XmlGetProperty(updatecheck_node, "Prompt") == "true"; 259 output_object.prompt = XmlGetProperty(updatecheck_node, "Prompt") == "true";
260 SetOutputObject(output_object); 260 SetOutputObject(output_object);
261 return; 261 return;
262 } 262 }
263 263
264 }; // namespace chromeos_update_engine 264 }; // namespace chromeos_update_engine
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698