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/mm1_modem_simple_proxy.cc b/mm1_modem_simple_proxy.cc
index e17c156..ca365d8 100644
--- a/mm1_modem_simple_proxy.cc
+++ b/mm1_modem_simple_proxy.cc
@@ -31,7 +31,7 @@
     SLOG(DBus, 2) << __func__;
     proxy_.Connect(properties, 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_.Disconnect(bearer, 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_.GetStatus(cb.get(), timeout);
     cb.release();
-  } catch (DBus::Error e) {
+  } catch (const DBus::Error &e) {
     if (error)
       CellularError::FromDBusError(e, error);
   }