shill: Catch C++ exceptions by reference instead of value.

BUG=chromium-os:30583
TEST=Build and run unit tests.

Change-Id: Icaa836893724a8cf03547da2a575b458b0fd6792
Reviewed-on: https://gerrit.chromium.org/gerrit/21920
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
Commit-Ready: Ben Chan <benchan@chromium.org>
diff --git a/modem_cdma_proxy.cc b/modem_cdma_proxy.cc
index ab08751..edda190 100644
--- a/modem_cdma_proxy.cc
+++ b/modem_cdma_proxy.cc
@@ -30,7 +30,7 @@
     SLOG(DBus, 2) << __func__;
     proxy_.Activate(carrier, cb.get(), timeout);
     cb.release();
-  } catch (DBus::Error e) {
+  } catch (const DBus::Error &e) {
     if (error)
       CellularError::FromDBusError(e, error);
   }
@@ -46,7 +46,7 @@
     SLOG(DBus, 2) << __func__;
     proxy_.GetRegistrationState(cb.get(), timeout);
     cb.release();
-  } catch (DBus::Error e) {
+  } catch (const DBus::Error &e) {
     if (error)
       CellularError::FromDBusError(e, error);
   }
@@ -60,7 +60,7 @@
     SLOG(DBus, 2) << __func__;
     proxy_.GetSignalQuality(cb.get(), timeout);
     cb.release();
-  } catch (DBus::Error e) {
+  } catch (const DBus::Error &e) {
     if (error)
       CellularError::FromDBusError(e, error);
   }