From 7d9205d4b93aa3a798571671a2c5217f51f3b64f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Fri, 19 Jun 2015 00:10:50 +0200 Subject: [PATCH] Better handling of features that need a device --- cmd/fdroidcl/devices.go | 17 ++++++++++------- cmd/fdroidcl/search.go | 8 +++++--- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/cmd/fdroidcl/devices.go b/cmd/fdroidcl/devices.go index 83b55a1..2e7f40a 100644 --- a/cmd/fdroidcl/devices.go +++ b/cmd/fdroidcl/devices.go @@ -40,18 +40,21 @@ func startAdbIfNeeded() { } } -func oneDevice() *adb.Device { +func maybeOneDevice() *adb.Device { devices, err := adb.Devices() if err != nil { log.Fatalf("Could not get devices: %v", err) } - if len(devices) == 0 { - log.Printf("No devices found, no device info will be available") - return nil - } - if len(devices) > 1 { - log.Printf("Too many devices found, no device info will be available") + if len(devices) != 1 { return nil } return devices[0] } + +func mustOneDevice() *adb.Device { + device := maybeOneDevice() + if device == nil { + log.Fatalf("Exactly one connected device is needed") + } + return device +} diff --git a/cmd/fdroidcl/search.go b/cmd/fdroidcl/search.go index 0d42f2f..539dcc3 100644 --- a/cmd/fdroidcl/search.go +++ b/cmd/fdroidcl/search.go @@ -33,9 +33,11 @@ func runSearch(args []string) { fmt.Println("-i is redundant if -u is specified") cmdSearch.Flag.Usage() } - device := oneDevice() - if device == nil && (*installed || *updates) { - log.Fatalf("Exactly one connected device is needed") + var device *adb.Device + if *installed || *updates { + device = mustOneDevice() + } else { + device = maybeOneDevice() } index := mustLoadIndex() apps := filterAppsSearch(index.Apps, args)