C++程序  |  41行  |  1.24 KB

/* //device/system/reference-ril/misc.c
**
** Copyright 2006, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing, software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
** See the License for the specific language governing permissions and
** limitations under the License.
*/
#include <sys/system_properties.h>

#include "misc.h"
/** returns 1 if line starts with prefix, 0 if it does not */
int strStartsWith(const char *line, const char *prefix)
{
    for ( ; *line != '\0' && *prefix != '\0' ; line++, prefix++) {
        if (*line != *prefix) {
            return 0;
        }
    }

    return *prefix == '\0';
}

// Returns true iff running this process in an emulator VM
bool isInEmulator(void) {
  static int inQemu = -1;
  if (inQemu < 0) {
      char propValue[PROP_VALUE_MAX];
      inQemu = (__system_property_get("ro.kernel.qemu", propValue) != 0);
  }
  return inQemu == 1;
}