mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-09-27 14:56:16 +00:00
35 lines
878 B
Plaintext
35 lines
878 B
Plaintext
|
// Copyright (c) 2008 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.
|
||
|
|
||
|
#include "base/mac_util.h"
|
||
|
|
||
|
#include <Carbon/Carbon.h>
|
||
|
#import <Cocoa/Cocoa.h>
|
||
|
|
||
|
#include "base/file_path.h"
|
||
|
#include "base/logging.h"
|
||
|
#include "base/scoped_cftyperef.h"
|
||
|
#include "base/sys_string_conversions.h"
|
||
|
|
||
|
namespace mac_util {
|
||
|
|
||
|
// Adapted from http://developer.apple.com/carbon/tipsandtricks.html#AmIBundled
|
||
|
bool AmIBundled() {
|
||
|
ProcessSerialNumber psn = {0, kCurrentProcess};
|
||
|
|
||
|
FSRef fsref;
|
||
|
if (GetProcessBundleLocation(&psn, &fsref) != noErr)
|
||
|
return false;
|
||
|
|
||
|
FSCatalogInfo info;
|
||
|
if (FSGetCatalogInfo(&fsref, kFSCatInfoNodeFlags, &info,
|
||
|
NULL, NULL, NULL) != noErr) {
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
return info.nodeFlags & kFSNodeIsDirectoryMask;
|
||
|
}
|
||
|
|
||
|
} // namespace mac_util
|