From 7f778403863b33a9460df9cfbc20114af755a237 Mon Sep 17 00:00:00 2001 From: Scott Jackson Date: Fri, 2 May 2014 21:48:30 -0700 Subject: Possible fix for EQ crash some users are getting --- .../daneren2005/dsub/fragments/EqualizerFragment.java | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/src/github/daneren2005/dsub/fragments/EqualizerFragment.java b/src/github/daneren2005/dsub/fragments/EqualizerFragment.java index 4bdb1716..17448516 100644 --- a/src/github/daneren2005/dsub/fragments/EqualizerFragment.java +++ b/src/github/daneren2005/dsub/fragments/EqualizerFragment.java @@ -156,8 +156,18 @@ public class EqualizerFragment extends SubsonicFragment { SharedPreferences.Editor editor = prefs.edit(); editor.putBoolean(Constants.PREFERENCES_EQUALIZER_ON, enabled); editor.commit(); - equalizer.setEnabled(enabled); - updateBars(true); + for(int i = 0; i < 10; i++) { + try { + equalizer.setEnabled(enabled); + updateBars(true); + i = 10; + } catch (UnsupportedOperationException e) { + equalizerController.release(); + equalizer = equalizerController.getEqualizer(); + bass = equalizerController.getBassBoost(); + loudnessEnhancer = equalizerController.getLoudnessEnhancerController(); + } + } } private void updateBars(boolean changedEnabled) { -- cgit v1.2.3 From ddac0b1268f3336d27f83c0e6a9e00a021c6ba2e Mon Sep 17 00:00:00 2001 From: Scott Jackson Date: Sat, 3 May 2014 17:26:59 -0700 Subject: Apply same work around for applying presets --- src/github/daneren2005/dsub/fragments/EqualizerFragment.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/github/daneren2005/dsub/fragments/EqualizerFragment.java b/src/github/daneren2005/dsub/fragments/EqualizerFragment.java index 17448516..8329298f 100644 --- a/src/github/daneren2005/dsub/fragments/EqualizerFragment.java +++ b/src/github/daneren2005/dsub/fragments/EqualizerFragment.java @@ -146,7 +146,17 @@ public class EqualizerFragment extends SubsonicFragment { @Override public boolean onContextItemSelected(MenuItem menuItem) { short preset = (short) menuItem.getItemId(); - equalizer.usePreset(preset); + for(int i = 0; i < 10; i++) { + try { + equalizer.usePreset(preset); + i = 10; + } catch (UnsupportedOperationException e) { + equalizerController.release(); + equalizer = equalizerController.getEqualizer(); + bass = equalizerController.getBassBoost(); + loudnessEnhancer = equalizerController.getLoudnessEnhancerController(); + } + } updateBars(false); return true; } -- cgit v1.2.3 From 6caa792b3545be0d020c4f54e76ef18ad8d9faf3 Mon Sep 17 00:00:00 2001 From: Scott Jackson Date: Sat, 3 May 2014 17:27:43 -0700 Subject: Shouldn't need that try/catch block anymore --- src/github/daneren2005/dsub/fragments/EqualizerFragment.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/github/daneren2005/dsub/fragments/EqualizerFragment.java b/src/github/daneren2005/dsub/fragments/EqualizerFragment.java index 8329298f..de6b5e0a 100644 --- a/src/github/daneren2005/dsub/fragments/EqualizerFragment.java +++ b/src/github/daneren2005/dsub/fragments/EqualizerFragment.java @@ -206,11 +206,7 @@ public class EqualizerFragment extends SubsonicFragment { } else if(setLevel > maxEQLevel) { setLevel = maxEQLevel; } - try { - equalizer.setBandLevel(band, setLevel); - } catch(Exception e) { - Log.w(TAG, "Failed to set band level"); - } + equalizer.setBandLevel(band, setLevel); } else if(!isEnabled) { bar.setProgress(-minEQLevel); } -- cgit v1.2.3