Home | History | Annotate | Download | only in common
      1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef CONTENT_COMMON_SET_PROCESS_TITLE_H_
      6 #define CONTENT_COMMON_SET_PROCESS_TITLE_H_
      7 
      8 namespace content {
      9 // Sets OS-specific process title information based on the command line. This
     10 // does nothing if the OS doesn't support or need this capability.
     11 //
     12 // Pass in the argv from main(). On Windows, where there is no argv, you can
     13 // pass NULL or just don't call this function, since it does nothing. This
     14 // argv pointer will be cached so if you call this function again, you can pass
     15 // NULL in the second call. This is to support the case where it's called once
     16 // at startup, and later when a zygote is fork()ed. The later call doesn't have
     17 // easy access to main's argv.
     18 //
     19 // On non-Mac Unix platforms, we exec ourselves from /proc/self/exe, but that
     20 // makes the process name that shows up in "ps" etc. for the child processes
     21 // show as "exe" instead of "chrome" or something reasonable. This function
     22 // will try to fix it so the "effective" command line shows up instead.
     23 void SetProcessTitleFromCommandLine(const char** main_argv);
     24 
     25 }  // namespace content
     26 
     27 #endif  // CONTENT_COMMON_SET_PROCESS_TITLE_H_
     28