summaryrefslogtreecommitdiffstats
path: root/chrome/browser/sxs_linux.h
blob: 618654ed6286eb8fe47ed9f061aee2856f57d0e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_BROWSER_SXS_LINUX_H_
#define CHROME_BROWSER_SXS_LINUX_H_

#include "base/compiler_specific.h"

namespace base {
class FilePath;
}

namespace sxs_linux {

// Records channel of the running browser in user data dir. This is needed
// to support a seamless and automatic upgrade from non-side-by-side
// to side-by-side Linux packages (the latter use different default data dirs).
// Must be run on a blocking thread pool.
void AddChannelMarkToUserDataDir();

// Returns true if user data dir migration has been requested.
bool ShouldMigrateUserDataDir() WARN_UNUSED_RESULT;

// Migrates user data dir to a side-by-side-compatible one.
// Returns exit code - caller should make the process exit with that code.
int MigrateUserDataDir() WARN_UNUSED_RESULT;

}  // namespace sxs_linux

#endif  // CHROME_BROWSER_SXS_LINUX_H_