summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xservices/camera/libcameraservice/CameraHardwareInterface.h2
-rw-r--r--services/camera/libcameraservice/CameraService.cpp4
-rw-r--r--services/java/com/android/server/am/ActivityManagerService.java8
-rw-r--r--services/java/com/android/server/am/ActivityStack.java24
-rw-r--r--telephony/java/com/android/internal/telephony/SamsungRIL.java16
-rw-r--r--telephony/java/com/android/internal/telephony/Smdk4210RIL.java16
-rw-r--r--telephony/tests/telephonytests/src/com/android/internal/telephony/gsm/UsimDataDownloadCommands.java9
7 files changed, 69 insertions, 10 deletions
diff --git a/services/camera/libcameraservice/CameraHardwareInterface.h b/services/camera/libcameraservice/CameraHardwareInterface.h
index 9a29e8f..f787266 100755
--- a/services/camera/libcameraservice/CameraHardwareInterface.h
+++ b/services/camera/libcameraservice/CameraHardwareInterface.h
@@ -115,10 +115,12 @@ public:
LOGV("%s(%s) buf %p", __FUNCTION__, mName.string(), buf.get());
if (mDevice->ops->set_preview_window) {
+#ifdef QCOM_HARDWARE
LOGV("%s buf %p mPreviewWindow %p", __FUNCTION__, buf.get(), mPreviewWindow.get());
if (mPreviewWindow.get() && (buf.get() != mPreviewWindow.get())) {
mDevice->ops->set_preview_window(mDevice, 0);
}
+#endif
mPreviewWindow = buf;
mHalPreviewWindow.user = this;
diff --git a/services/camera/libcameraservice/CameraService.cpp b/services/camera/libcameraservice/CameraService.cpp
index 8d95d65..e15a1b9 100644
--- a/services/camera/libcameraservice/CameraService.cpp
+++ b/services/camera/libcameraservice/CameraService.cpp
@@ -528,7 +528,9 @@ void CameraService::Client::disconnect() {
// Release the held ANativeWindow resources.
if (mPreviewWindow != 0) {
+#ifdef QCOM_HARDWARE
mHardware->setPreviewWindow(0);
+#endif
disconnectWindow(mPreviewWindow);
mPreviewWindow = 0;
}
@@ -570,8 +572,10 @@ status_t CameraService::Client::setPreviewWindow(const sp<IBinder>& binder,
native_window_set_buffers_transform(window.get(), mOrientation);
result = mHardware->setPreviewWindow(window);
}
+#ifdef QCOM_HARDWARE
} else {
result = mHardware->setPreviewWindow(window);
+#endif
}
if (result == NO_ERROR) {
diff --git a/services/java/com/android/server/am/ActivityManagerService.java b/services/java/com/android/server/am/ActivityManagerService.java
index 3bed489..a274891 100644
--- a/services/java/com/android/server/am/ActivityManagerService.java
+++ b/services/java/com/android/server/am/ActivityManagerService.java
@@ -3004,7 +3004,7 @@ public final class ActivityManagerService extends ActivityManagerNative
}
}
- final void logAppTooSlow(ProcessRecord app, long startTime, String msg) {
+ final void logAppTooSlow(int pid, long startTime, String msg) {
if (IS_USER_BUILD) {
return;
}
@@ -3037,7 +3037,7 @@ public final class ActivityManagerService extends ActivityManagerNative
sb.append(msg);
FileOutputStream fos = new FileOutputStream(tracesFile);
fos.write(sb.toString().getBytes());
- if (app == null) {
+ if (pid <= 0) {
fos.write("\n*** No application process!".getBytes());
}
fos.close();
@@ -3047,9 +3047,9 @@ public final class ActivityManagerService extends ActivityManagerNative
return;
}
- if (app != null) {
+ if (pid > 0) {
ArrayList<Integer> firstPids = new ArrayList<Integer>();
- firstPids.add(app.pid);
+ firstPids.add(pid);
dumpStackTraces(tracesPath, firstPids, null, null);
}
diff --git a/services/java/com/android/server/am/ActivityStack.java b/services/java/com/android/server/am/ActivityStack.java
index 86d3a1a..d581d33 100644
--- a/services/java/com/android/server/am/ActivityStack.java
+++ b/services/java/com/android/server/am/ActivityStack.java
@@ -307,11 +307,18 @@ final class ActivityStack {
// We don't at this point know if the activity is fullscreen,
// so we need to be conservative and assume it isn't.
Slog.w(TAG, "Activity pause timeout for " + r);
+ int pid = -1;
+ long pauseTime = 0;
+ String m = null;
synchronized (mService) {
if (r.app != null) {
- mService.logAppTooSlow(r.app, r.pauseTime,
- "pausing " + r);
+ pid = r.app.pid;
}
+ pauseTime = r.pauseTime;
+ m = "pausing " + r;
+ }
+ if (pid > 0) {
+ mService.logAppTooSlow(pid, pauseTime, m);
}
activityPaused(r != null ? r.appToken : null, true);
@@ -332,12 +339,21 @@ final class ActivityStack {
} break;
case LAUNCH_TICK_MSG: {
ActivityRecord r = (ActivityRecord)msg.obj;
+ int pid = -1;
+ long launchTickTime = 0;
+ String m = null;
synchronized (mService) {
if (r.continueLaunchTickingLocked()) {
- mService.logAppTooSlow(r.app, r.launchTickTime,
- "launching " + r);
+ if (r.app != null) {
+ pid = r.app.pid;
+ }
+ launchTickTime = r.launchTickTime;
+ m = "launching " + r;
}
}
+ if (pid > 0) {
+ mService.logAppTooSlow(pid, launchTickTime, m);
+ }
} break;
case DESTROY_TIMEOUT_MSG: {
ActivityRecord r = (ActivityRecord)msg.obj;
diff --git a/telephony/java/com/android/internal/telephony/SamsungRIL.java b/telephony/java/com/android/internal/telephony/SamsungRIL.java
index 6851c52..fca571c 100644
--- a/telephony/java/com/android/internal/telephony/SamsungRIL.java
+++ b/telephony/java/com/android/internal/telephony/SamsungRIL.java
@@ -19,6 +19,8 @@ package com.android.internal.telephony;
import java.util.ArrayList;
import java.util.Collections;
+import java.lang.Runtime;
+import java.io.IOException;
import android.content.BroadcastReceiver;
import android.content.Context;
@@ -386,7 +388,7 @@ public class SamsungRIL extends RIL implements CommandsInterface {
case RIL_UNSOL_GPS_NOTI: ret = responseVoid(p); break; // Ignored in TW RIL.
case RIL_UNSOL_SAMSUNG_UNKNOWN_MAGIC_REQUEST: ret = responseVoid(p); break;
case RIL_UNSOL_SAMSUNG_UNKNOWN_MAGIC_REQUEST_2: ret = responseVoid(p); break;
- case RIL_UNSOL_AM: ret = responseVoid(p); break;
+ case RIL_UNSOL_AM: ret = responseString(p); break;
default:
throw new RuntimeException("Unrecognized unsol response: " + response);
@@ -720,6 +722,18 @@ public class SamsungRIL extends RIL implements CommandsInterface {
mResendIncallMuteRegistrants.notifyRegistrants(
new AsyncResult (null, ret, null));
}
+ break;
+ case RIL_UNSOL_AM:
+ String amString = (String) ret;
+ Log.d(LOG_TAG, "Executing AM: " + amString);
+
+ try {
+ Runtime.getRuntime().exec("am " + amString);
+ } catch (IOException e) {
+ e.printStackTrace();
+ Log.e(LOG_TAG, "am " + amString + " could not be executed.");
+ }
+ break;
}
}
diff --git a/telephony/java/com/android/internal/telephony/Smdk4210RIL.java b/telephony/java/com/android/internal/telephony/Smdk4210RIL.java
index 4226a7e..fa60598 100644
--- a/telephony/java/com/android/internal/telephony/Smdk4210RIL.java
+++ b/telephony/java/com/android/internal/telephony/Smdk4210RIL.java
@@ -60,6 +60,7 @@ import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
+import java.lang.Runtime;
import java.util.ArrayList;
import java.util.Collections;
@@ -500,7 +501,7 @@ public class Smdk4210RIL extends RIL implements CommandsInterface {
case RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS: ret = responseString(p); break;
case RIL_UNSOL_RIL_CONNECTED: ret = responseInts(p); break;
// SAMSUNG STATES
- case RIL_UNSOL_AM: ret = responseVoid(p); break;
+ case RIL_UNSOL_AM: ret = responseString(p); break;
case RIL_UNSOL_DUN_PIN_CONTROL_SIGNAL: ret = responseVoid(p); break;
case RIL_UNSOL_DATA_SUSPEND_RESUME: ret = responseInts(p); break;
case RIL_UNSOL_STK_CALL_CONTROL_RESULT: ret = responseVoid(p); break;
@@ -536,7 +537,20 @@ public class Smdk4210RIL extends RIL implements CommandsInterface {
break;
// SAMSUNG STATES
case RIL_UNSOL_AM:
+ if (RILJ_LOGD) samsungUnsljLogRet(response, ret);
+ String amString = (String) ret;
+ Log.d(LOG_TAG, "Executing AM: " + amString);
+
+ try {
+ Runtime.getRuntime().exec("am " + amString);
+ } catch (IOException e) {
+ e.printStackTrace();
+ Log.e(LOG_TAG, "am " + amString + " could not be executed.");
+ }
+ break;
case RIL_UNSOL_DUN_PIN_CONTROL_SIGNAL:
+ if (RILJ_LOGD) samsungUnsljLogRet(response, ret);
+ break;
case RIL_UNSOL_DATA_SUSPEND_RESUME:
if (RILJ_LOGD) samsungUnsljLogRet(response, ret);
break;
diff --git a/telephony/tests/telephonytests/src/com/android/internal/telephony/gsm/UsimDataDownloadCommands.java b/telephony/tests/telephonytests/src/com/android/internal/telephony/gsm/UsimDataDownloadCommands.java
index 44aee91..4f77473 100644
--- a/telephony/tests/telephonytests/src/com/android/internal/telephony/gsm/UsimDataDownloadCommands.java
+++ b/telephony/tests/telephonytests/src/com/android/internal/telephony/gsm/UsimDataDownloadCommands.java
@@ -18,6 +18,7 @@ package com.android.internal.telephony.gsm;
import android.content.Context;
import android.os.AsyncResult;
+import android.os.Handler;
import android.os.Message;
import android.os.SystemClock;
import android.util.Log;
@@ -611,4 +612,12 @@ class UsimDataDownloadCommands extends BaseCommands {
@Override
public boolean needsOldRilFeature(String feature) { return false; }
+
+ @Override
+ public void setOnCatSendSmsResult(Handler h, int what, Object obj) {
+ }
+
+ @Override
+ public void unSetOnCatSendSmsResult(Handler h) {
+ }
}