Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9f8e6008 authored by Michael Bestas's avatar Michael Bestas Committed by Steve Kondik
Browse files

batteryservice: Avoid exception if device doesn't support HVDCP

E BatteryService: Failure in reading charger type
E BatteryService: java.io.FileNotFoundException: /sys/class/power_supply/usb/type: open failed: ENOENT (No such file or directory)
E BatteryService: 	at libcore.io.IoBridge.open(IoBridge.java:452)
E BatteryService: 	at java.io.FileInputStream.<init>(FileInputStream.java:76)
E BatteryService: 	at java.io.FileReader.<init>(FileReader.java:42)
E BatteryService: 	at com.android.server.BatteryService$Led.isHvdcpPresent(BatteryService.java:792)
E BatteryService: 	at com.android.server.BatteryService$Led.updateLightsLocked(BatteryService.java:849)
E BatteryService: 	at com.android.server.BatteryService.processValuesLocked(BatteryService.java:501)
E BatteryService: 	at com.android.server.BatteryService.update(BatteryService.java:330)
E BatteryService: 	at com.android.server.BatteryService.-wrap4(BatteryService.java)
E BatteryService: 	at com.android.server.BatteryService$BatteryListener.batteryPropertiesChanged(BatteryService.java:870)
E BatteryService: 	at android.os.IBatteryPropertiesListener$Stub.onTransact(IBatteryPropertiesListener.java:58)
E BatteryService: 	at android.os.Binder.execTransact(Binder.java:453)
E BatteryService: Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
E BatteryService: 	at libcore.io.Posix.open(Native Method)
E BatteryService: 	at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186)
E BatteryService: 	at libcore.io.IoBridge.open(IoBridge.java:438)
E BatteryService: 	... 10 more

Change-Id: I3ed4d8959a7e492e483fab365cf09612b5302908
(cherry picked from commit 64deb448)
parent 7256aa19
Loading
Loading
Loading
Loading
+6 −9
Original line number Diff line number Diff line
@@ -53,7 +53,6 @@ import android.os.UserHandle;
import android.provider.Settings;
import android.util.EventLog;
import android.util.Slog;
import cyanogenmod.providers.CMSettings;

import java.io.File;
import java.io.FileDescriptor;
@@ -62,7 +61,6 @@ import java.io.FileReader;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintWriter;

@@ -974,7 +972,12 @@ public final class BatteryService extends SystemService {
            FileReader fileReader;
            BufferedReader br;
            String type;
            boolean ret;
            boolean ret = false;

            if (!mChargerTypeFile.exists()) {
                // Device does not support HVDCP
                return ret;
            }

            try {
                fileReader = new FileReader(mChargerTypeFile);
@@ -982,15 +985,9 @@ public final class BatteryService extends SystemService {
                type =  br.readLine();
                if (type.regionMatches(true, 0, "USB_HVDCP", 0, 9))
                    ret = true;
                else
                    ret = false;
                br.close();
                fileReader.close();
            } catch (FileNotFoundException e) {
                ret = false;
                Slog.e(TAG, "Failure in reading charger type", e);
            } catch (IOException e) {
                ret = false;
                Slog.e(TAG, "Failure in reading charger type", e);
            }