Backport Yeeloong battery.el fix from trunk

Ref: http://lists.gnu.org/archive/html/emacs-devel/2014-03/msg00782.html

* lisp/battery.el (battery-linux-sysfs):
Search for each field from the beginning of the buffer.
This commit is contained in:
Richard M. Stallman 2014-03-22 17:08:47 -07:00 committed by Glenn Morris
parent 3e702d1649
commit 9e37f3b9c3
2 changed files with 10 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2014-03-23 Richard Stallman <rms@gnu.org>
* battery.el (battery-linux-sysfs): Search for each field
from the beginning of the buffer.
2014-03-22 Dmitry Gutov <dgutov@yandex.ru>
* emacs-lisp/package.el (package-desc): Use the contents of the

View file

@ -458,12 +458,15 @@ The following %-sequences are provided:
(and (re-search-forward "POWER_SUPPLY_STATUS=\\(.*\\)$" nil t)
(member charging-state '("Unknown" "Full" nil))
(setq charging-state (match-string 1)))
(goto-char (point-min))
(when (re-search-forward
"POWER_SUPPLY_\\(CURRENT\\|POWER\\)_NOW=\\([0-9]*\\)$"
nil t)
(setq rate (float (string-to-number (match-string 2)))))
(goto-char (point-min))
(when (re-search-forward "POWER_SUPPLY_TEMP=\\([0-9]*\\)$" nil t)
(setq temperature (match-string 1)))
(goto-char (point-min))
(let (full-string now-string)
;; Sysfs may list either charge (mAh) or energy (mWh).
;; Keep track of both, and choose which to report later.
@ -477,7 +480,8 @@ The following %-sequences are provided:
(string-to-number full-string))
charge-now (+ charge-now
(string-to-number now-string))))
((and (re-search-forward
((and (progn (goto-char (point-min)) t)
(re-search-forward
"POWER_SUPPLY_ENERGY_FULL=\\([0-9]*\\)$" nil t)
(setq full-string (match-string 1))
(re-search-forward