diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/bfd/version.h ./bfd/version.h
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/bfd/version.h	2015-02-10 01:58:28.000000000 +0000
+++ ./bfd/version.h	2015-02-17 01:58:27.000000000 +0000
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20150210
+#define BFD_VERSION_DATE 20150217
 #define BFD_VERSION @bfd_version@
 #define BFD_VERSION_STRING  @bfd_version_package@ @bfd_version_string@
 #define REPORT_BUGS_TO @report_bugs_to@
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/djunpack.bat ./djunpack.bat
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/djunpack.bat	2015-02-10 02:01:11.000000000 +0000
+++ ./djunpack.bat	2015-02-17 02:01:15.000000000 +0000
@@ -17,8 +17,8 @@ Rem
 Rem The following 2 lines need to be changed with each new GDB release, to
 Rem be identical to the name of the top-level directory where the GDB
 Rem distribution unpacks itself.
-set GDBVER=$package-7.8.90.20150210
-if "%GDBVER%"=="$package-7.8.90.20150210" GoTo EnvOk
+set GDBVER=$package-7.8.90.20150217
+if "%GDBVER%"=="$package-7.8.90.20150217" GoTo EnvOk
 Rem If their environment space is too small, re-exec with a larger one
 command.com /e:4096 /c %0 %1
 GoTo End
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/ChangeLog ./gdb/ChangeLog
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/ChangeLog	2015-02-10 01:58:29.000000000 +0000
+++ ./gdb/ChangeLog	2015-02-17 01:58:28.000000000 +0000
@@ -1,3 +1,30 @@
+2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* python/py-framefilter.c (py_print_single_arg, enumerate_locals)
+	(py_print_frame): Use RETURN_MASK_ERROR.
+
+2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* python/py-framefilter.c (py_print_frame): Mention RETURN_QUIT in
+	function comment.  Wrap all function that can throw in cleanups.
+	(gdbpy_apply_frame_filter): Wrap all function that can throw in
+	cleanups.
+
+2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* python/py-framefilter.c (py_print_frame): Substitute goto error.
+	Remove the error label.
+
+2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* python/py-framefilter.c (py_print_frame): Put conditional code paths
+	with goto first, indent the former else codepath left.  Put variable
+	'elided' to a new inner block.
+
+2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* python/py-framefilter.c (py_print_frame): Whitespacing fixes.
+
 2015-02-04  Doug Evans  <dje@google.com>
 	    Pedro Alves  <palves@redhat.com>
 	    Eli Zaretskii  <eliz@gnu.org>
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gcore.1 ./gdb/doc/gcore.1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gcore.1	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gcore.1	2015-02-17 02:01:08.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GCORE 1"
-.TH GCORE 1 "2015-02-10" "gdb-7.8.90.20150210-cvs" "GNU Development Tools"
+.TH GCORE 1 "2015-02-17" "gdb-7.8.90.20150217-cvs" "GNU Development Tools"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.1 ./gdb/doc/gdb.1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.1	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.1	2015-02-17 02:01:08.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDB 1"
-.TH GDB 1 "2015-02-10" "gdb-7.8.90.20150210-cvs" "GNU Development Tools"
+.TH GDB 1 "2015-02-17" "gdb-7.8.90.20150217-cvs" "GNU Development Tools"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info ./gdb/doc/gdb.info
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-1 ./gdb/doc/gdb.info-1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-1	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info-1	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
@@ -45,7 +45,7 @@ Debugging with GDB
 
 This file describes GDB, the GNU symbolic debugger.
 
-   This is the Tenth Edition, for GDB (GDB) Version 7.8.90.20150210-cvs.
+   This is the Tenth Edition, for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
@@ -494,7 +494,7 @@ Let us use GDB to try to see what is goi
      There is absolutely no warranty for GDB; type "show warranty"
       for details.
 
-     GDB 7.8.90.20150210-cvs, Copyright 1999 Free Software Foundation, Inc...
+     GDB 7.8.90.20150217-cvs, Copyright 1999 Free Software Foundation, Inc...
      (gdb)
 
 GDB reads only enough symbol data to know where to find the rest when
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-2 ./gdb/doc/gdb.info-2
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-2	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info-2	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-3 ./gdb/doc/gdb.info-3
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-3	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info-3	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-4 ./gdb/doc/gdb.info-4
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-4	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info-4	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-5 ./gdb/doc/gdb.info-5
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-5	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info-5	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
@@ -8107,7 +8107,7 @@ and TeX (or `texi2roff') to typeset the 
 
    GDB includes an already formatted copy of the on-line Info version
 of this manual in the `gdb' subdirectory.  The main Info file is
-`gdb-7.8.90.20150210-cvs/gdb/gdb.info', and it refers to subordinate
+`gdb-7.8.90.20150217-cvs/gdb/gdb.info', and it refers to subordinate
 files matching `gdb.info*' in the same directory.  If necessary, you
 can print out these files, or read them with any editor; but they are
 easier to read using the `info' subsystem in GNU Emacs or the
@@ -8118,8 +8118,8 @@ distribution.
 Info formatting programs, such as `texinfo-format-buffer' or `makeinfo'.
 
    If you have `makeinfo' installed, and are in the top level GDB
-source directory (`gdb-7.8.90.20150210-cvs', in the case of version
-7.8.90.20150210-cvs), you can make the Info file by typing:
+source directory (`gdb-7.8.90.20150217-cvs', in the case of version
+7.8.90.20150217-cvs), you can make the Info file by typing:
 
      cd gdb
      make gdb.info
@@ -8144,7 +8144,7 @@ format.  On its own, TeX cannot either r
 
    If you have TeX and a DVI printer program installed, you can typeset
 and print this manual.  First switch to the `gdb' subdirectory of the
-main source directory (for example, to `gdb-7.8.90.20150210-cvs/gdb')
+main source directory (for example, to `gdb-7.8.90.20150217-cvs/gdb')
 and type:
 
      make gdb.dvi
@@ -8153,8 +8153,8 @@ and type:
 
    ---------- Footnotes ----------
 
-   (1) In `gdb-7.8.90.20150210-cvs/gdb/refcard.ps' of the version
-7.8.90.20150210-cvs release.
+   (1) In `gdb-7.8.90.20150217-cvs/gdb/refcard.ps' of the version
+7.8.90.20150217-cvs release.
 
 
 File: gdb.info,  Node: Installing GDB,  Next: Maintenance Commands,  Prev: Formatting Documentation,  Up: Top
@@ -8263,39 +8263,39 @@ preparing GDB for installation; you can 
 in a single directory, whose name is usually composed by appending the
 version number to `gdb'.
 
-   For example, the GDB version 7.8.90.20150210-cvs distribution is in
-the `gdb-7.8.90.20150210-cvs' directory.  That directory contains:
+   For example, the GDB version 7.8.90.20150217-cvs distribution is in
+the `gdb-7.8.90.20150217-cvs' directory.  That directory contains:
 
-`gdb-7.8.90.20150210-cvs/configure (and supporting files)'
+`gdb-7.8.90.20150217-cvs/configure (and supporting files)'
      script for configuring GDB and all its supporting libraries
 
-`gdb-7.8.90.20150210-cvs/gdb'
+`gdb-7.8.90.20150217-cvs/gdb'
      the source specific to GDB itself
 
-`gdb-7.8.90.20150210-cvs/bfd'
+`gdb-7.8.90.20150217-cvs/bfd'
      source for the Binary File Descriptor library
 
-`gdb-7.8.90.20150210-cvs/include'
+`gdb-7.8.90.20150217-cvs/include'
      GNU include files
 
-`gdb-7.8.90.20150210-cvs/libiberty'
+`gdb-7.8.90.20150217-cvs/libiberty'
      source for the `-liberty' free software library
 
-`gdb-7.8.90.20150210-cvs/opcodes'
+`gdb-7.8.90.20150217-cvs/opcodes'
      source for the library of opcode tables and disassemblers
 
-`gdb-7.8.90.20150210-cvs/readline'
+`gdb-7.8.90.20150217-cvs/readline'
      source for the GNU command-line interface
 
-`gdb-7.8.90.20150210-cvs/glob'
+`gdb-7.8.90.20150217-cvs/glob'
      source for the GNU filename pattern-matching subroutine
 
-`gdb-7.8.90.20150210-cvs/mmalloc'
+`gdb-7.8.90.20150217-cvs/mmalloc'
      source for the GNU memory-mapped malloc package
 
    The simplest way to configure and build GDB is to run `configure'
 from the `gdb-VERSION-NUMBER' source directory, which in this example
-is the `gdb-7.8.90.20150210-cvs' directory.
+is the `gdb-7.8.90.20150217-cvs' directory.
 
    First switch to the `gdb-VERSION-NUMBER' source directory if you are
 not already in it; then run `configure'.  Pass the identifier for the
@@ -8303,7 +8303,7 @@ platform on which GDB will run as an arg
 
    For example:
 
-     cd gdb-7.8.90.20150210-cvs
+     cd gdb-7.8.90.20150217-cvs
      ./configure HOST
      make
 
@@ -8325,8 +8325,8 @@ you may need to run `sh' on it explicitl
 
    If you run `configure' from a directory that contains source
 directories for multiple libraries or programs, such as the
-`gdb-7.8.90.20150210-cvs' source directory for version
-7.8.90.20150210-cvs, `configure' creates configuration files for every
+`gdb-7.8.90.20150217-cvs' source directory for version
+7.8.90.20150217-cvs, `configure' creates configuration files for every
 directory level underneath (unless you tell it not to, with the
 `--norecursion' option).
 
@@ -8367,13 +8367,13 @@ directory.  If the path to `configure' w
 argument to `--srcdir', you can leave out the `--srcdir' option; it is
 assumed.)
 
-   For example, with version 7.8.90.20150210-cvs, you can build GDB in a
+   For example, with version 7.8.90.20150217-cvs, you can build GDB in a
 separate directory for a Sun 4 like this:
 
-     cd gdb-7.8.90.20150210-cvs
+     cd gdb-7.8.90.20150217-cvs
      mkdir ../gdb-sun4
      cd ../gdb-sun4
-     ../gdb-7.8.90.20150210-cvs/configure sun4
+     ../gdb-7.8.90.20150217-cvs/configure sun4
      make
 
    When `configure' builds a configuration using a remote source
@@ -8384,7 +8384,7 @@ directory `gdb-sun4/libiberty', and GDB 
 
    Make sure that your path to the `configure' script has just one
 instance of `gdb' in it.  If your path to `configure' looks like
-`../gdb-7.8.90.20150210-cvs/gdb/configure', you are configuring only
+`../gdb-7.8.90.20150217-cvs/gdb/configure', you are configuring only
 one subdirectory of GDB, not the whole package.  This leads to build
 errors about missing include files such as `bfd/bfd.h'.
 
@@ -8400,8 +8400,8 @@ called `configure' (or one of its subdir
 
    The `Makefile' that `configure' generates in each source directory
 also runs recursively.  If you type `make' in a source directory such
-as `gdb-7.8.90.20150210-cvs' (or in a separate configured directory
-configured with `--srcdir=DIRNAME/gdb-7.8.90.20150210-cvs'), you will
+as `gdb-7.8.90.20150217-cvs' (or in a separate configured directory
+configured with `--srcdir=DIRNAME/gdb-7.8.90.20150217-cvs'), you will
 build all the required libraries, and then build GDB.
 
    When you have multiple hosts or targets configured in separate
@@ -8446,7 +8446,7 @@ you can use it to test your guesses on a
      Invalid configuration `i986v': machine `i986v' not recognized
 
 `config.sub' is also distributed in the GDB source directory
-(`gdb-7.8.90.20150210-cvs', for version 7.8.90.20150210-cvs).
+(`gdb-7.8.90.20150217-cvs', for version 7.8.90.20150217-cvs).
 
 
 File: gdb.info,  Node: Configure Options,  Next: System-wide configuration,  Prev: Config Names,  Up: Installing GDB
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-6 ./gdb/doc/gdb.info-6
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-6	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info-6	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-7 ./gdb/doc/gdb.info-7
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-7	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info-7	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-8 ./gdb/doc/gdb.info-8
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdb.info-8	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdb.info-8	2015-02-17 02:01:08.000000000 +0000
@@ -22,7 +22,7 @@ developing GNU and promoting software fr
    This file documents the GNU debugger GDB.
 
    This is the Tenth Edition, of `Debugging with GDB: the GNU
-Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150210-cvs.
+Source-Level Debugger' for GDB (GDB) Version 7.8.90.20150217-cvs.
 
    Copyright (C) 1988-2015 Free Software Foundation, Inc.
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdbinit.5 ./gdb/doc/gdbinit.5
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdbinit.5	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdbinit.5	2015-02-17 02:01:09.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDBINIT 5"
-.TH GDBINIT 5 "2015-02-10" "gdb-7.8.90.20150210-cvs" "GNU Development Tools"
+.TH GDBINIT 5 "2015-02-17" "gdb-7.8.90.20150217-cvs" "GNU Development Tools"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdbserver.1 ./gdb/doc/gdbserver.1
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/doc/gdbserver.1	2015-02-10 02:01:04.000000000 +0000
+++ ./gdb/doc/gdbserver.1	2015-02-17 02:01:08.000000000 +0000
@@ -124,7 +124,7 @@
 .\" ========================================================================
 .\"
 .IX Title "GDBSERVER 1"
-.TH GDBSERVER 1 "2015-02-10" "gdb-7.8.90.20150210-cvs" "GNU Development Tools"
+.TH GDBSERVER 1 "2015-02-17" "gdb-7.8.90.20150217-cvs" "GNU Development Tools"
 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
 .\" way too many mistakes in technical documents.
 .if n .ad l
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/po/gdb.pot ./gdb/po/gdb.pot
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/po/gdb.pot	2015-02-10 02:01:03.000000000 +0000
+++ ./gdb/po/gdb.pot	2015-02-17 02:01:07.000000000 +0000
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2015-02-10 02:01+0000\n"
+"POT-Creation-Date: 2015-02-17 02:01+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -20628,7 +20628,7 @@ msgstr ""
 msgid "No symbol or value provided."
 msgstr ""
 
-#: python/py-framefilter.c:1205
+#: python/py-framefilter.c:1215
 msgid "FrameDecorator.function: expecting a String, integer or None."
 msgstr ""
 
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/python/py-framefilter.c ./gdb/python/py-framefilter.c
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/python/py-framefilter.c	2015-02-10 01:58:29.000000000 +0000
+++ ./gdb/python/py-framefilter.c	2015-02-17 01:58:29.000000000 +0000
@@ -376,7 +376,7 @@ py_print_single_arg (struct ui_out *out,
   else
     val = fv;
 
-  TRY_CATCH (except, RETURN_MASK_ALL)
+  TRY_CATCH (except, RETURN_MASK_ERROR)
     {
       struct cleanup *cleanups = make_cleanup (null_cleanup, NULL);
 
@@ -761,7 +761,7 @@ enumerate_locals (PyObject *iter,
       /* If the object did not provide a value, read it.  */
       if (val == NULL)
 	{
-	  TRY_CATCH (except, RETURN_MASK_ALL)
+	  TRY_CATCH (except, RETURN_MASK_ERROR)
 	    {
 	      val = read_var_value (sym, frame);
 	    }
@@ -781,7 +781,7 @@ enumerate_locals (PyObject *iter,
 	  if (print_args_field || args_type != NO_VALUES)
 	    make_cleanup_ui_out_tuple_begin_end (out, NULL);
 	}
-      TRY_CATCH (except, RETURN_MASK_ALL)
+      TRY_CATCH (except, RETURN_MASK_ERROR)
 	{
 	  if (! ui_out_is_mi_like_p (out))
 	    {
@@ -838,7 +838,7 @@ enumerate_locals (PyObject *iter,
 
       do_cleanups (locals_cleanups);
 
-      TRY_CATCH (except, RETURN_MASK_ALL)
+      TRY_CATCH (except, RETURN_MASK_ERROR)
 	{
 	  ui_out_text (out, "\n");
 	}
@@ -1003,7 +1003,7 @@ py_print_args (PyObject *filter,
     If a frame level has been printed, do not print it again (in the
     case of elided frames).  Returns EXT_LANG_BT_ERROR on error, with any
     GDB exceptions converted to a Python exception, or EXT_LANG_BT_COMPLETED
-    on success.  */
+    on success.  It can also throw an exception RETURN_QUIT.  */
 
 static enum ext_lang_bt_status
 py_print_frame (PyObject *filter, int flags,
@@ -1014,9 +1014,9 @@ py_print_frame (PyObject *filter, int fl
   CORE_ADDR address = 0;
   struct gdbarch *gdbarch = NULL;
   struct frame_info *frame = NULL;
-  struct cleanup *cleanup_stack = make_cleanup (null_cleanup, NULL);
+  struct cleanup *cleanup_stack;
   struct value_print_options opts;
-  PyObject *py_inf_frame, *elided;
+  PyObject *py_inf_frame;
   int print_level, print_frame_info, print_args, print_locals;
   volatile struct gdb_exception except;
 
@@ -1033,39 +1033,36 @@ py_print_frame (PyObject *filter, int fl
   read them if they returned filter object requires us to do so.  */
   py_inf_frame = PyObject_CallMethod (filter, "inferior_frame", NULL);
   if (py_inf_frame == NULL)
-    goto error;
+    return EXT_LANG_BT_ERROR;
 
   frame = frame_object_to_frame_info (py_inf_frame);;
 
   Py_DECREF (py_inf_frame);
 
   if (frame == NULL)
-    goto error;
+    return EXT_LANG_BT_ERROR;
 
-  TRY_CATCH (except, RETURN_MASK_ALL)
+  TRY_CATCH (except, RETURN_MASK_ERROR)
     {
       gdbarch = get_frame_arch (frame);
     }
   if (except.reason < 0)
     {
       gdbpy_convert_exception (except);
-      goto error;
+      return EXT_LANG_BT_ERROR;
     }
 
-
   /* stack-list-variables.  */
   if (print_locals && print_args && ! print_frame_info)
     {
       if (py_mi_print_variables (filter, out, &opts,
 				 args_type, frame) == EXT_LANG_BT_ERROR)
-	goto error;
-      else
-	{
-	  do_cleanups (cleanup_stack);
-	  return EXT_LANG_BT_COMPLETED;
-	}
+	return EXT_LANG_BT_ERROR;
+      return EXT_LANG_BT_COMPLETED;
     }
 
+  cleanup_stack = make_cleanup (null_cleanup, NULL);
+
   /* -stack-list-locals does not require a
      wrapping frame attribute.  */
   if (print_frame_info || (print_args && ! print_locals))
@@ -1077,15 +1074,16 @@ py_print_frame (PyObject *filter, int fl
 	 and are printed with indention.  */
       if (indent > 0)
 	{
-	TRY_CATCH (except, RETURN_MASK_ALL)
-	  {
-	    ui_out_spaces (out, indent*4);
-	  }
-	if (except.reason < 0)
-	  {
-	    gdbpy_convert_exception (except);
-	    goto error;
-	  }
+	  TRY_CATCH (except, RETURN_MASK_ERROR)
+	    {
+	      ui_out_spaces (out, indent*4);
+	    }
+	  if (except.reason < 0)
+	    {
+	      gdbpy_convert_exception (except);
+	      do_cleanups (cleanup_stack);
+	      return EXT_LANG_BT_ERROR;
+	    }
 	}
 
       /* The address is required for frame annotations, and also for
@@ -1093,17 +1091,19 @@ py_print_frame (PyObject *filter, int fl
       if (PyObject_HasAttrString (filter, "address"))
 	{
 	  PyObject *paddr = PyObject_CallMethod (filter, "address", NULL);
-	  if (paddr != NULL)
+
+	  if (paddr == NULL)
 	    {
-	      if (paddr != Py_None)
-		{
-		  address = PyLong_AsLong (paddr);
-		  has_addr = 1;
-		}
-	      Py_DECREF (paddr);
+	      do_cleanups (cleanup_stack);
+	      return EXT_LANG_BT_ERROR;
 	    }
-	  else
-	    goto error;
+
+	  if (paddr != Py_None)
+	    {
+	      address = PyLong_AsLong (paddr);
+	      has_addr = 1;
+	    }
+	  Py_DECREF (paddr);
 	}
     }
 
@@ -1117,7 +1117,7 @@ py_print_frame (PyObject *filter, int fl
 
       slot = (struct frame_info **) htab_find_slot (levels_printed,
 						    frame, INSERT);
-      TRY_CATCH (except, RETURN_MASK_ALL)
+      TRY_CATCH (except, RETURN_MASK_ERROR)
 	{
 	  level = frame_relative_level (frame);
 
@@ -1140,7 +1140,8 @@ py_print_frame (PyObject *filter, int fl
       if (except.reason < 0)
 	{
 	  gdbpy_convert_exception (except);
-	  goto error;
+	  do_cleanups (cleanup_stack);
+	  return EXT_LANG_BT_ERROR;
 	}
     }
 
@@ -1150,7 +1151,7 @@ py_print_frame (PyObject *filter, int fl
 	 print nothing.  */
       if (opts.addressprint && has_addr)
 	{
-	  TRY_CATCH (except, RETURN_MASK_ALL)
+	  TRY_CATCH (except, RETURN_MASK_ERROR)
 	    {
 	      annotate_frame_address ();
 	      ui_out_field_core_addr (out, "addr", gdbarch, address);
@@ -1160,7 +1161,8 @@ py_print_frame (PyObject *filter, int fl
 	  if (except.reason < 0)
 	    {
 	      gdbpy_convert_exception (except);
-	      goto error;
+	      do_cleanups (cleanup_stack);
+	      return EXT_LANG_BT_ERROR;
 	    }
 	}
 
@@ -1168,65 +1170,69 @@ py_print_frame (PyObject *filter, int fl
       if (PyObject_HasAttrString (filter, "function"))
 	{
 	  PyObject *py_func = PyObject_CallMethod (filter, "function", NULL);
+	  struct cleanup *py_func_cleanup;
+	  const char *function = NULL;
 
-	  if (py_func != NULL)
+	  if (py_func == NULL)
 	    {
-	      const char *function = NULL;
+	      do_cleanups (cleanup_stack);
+	      return EXT_LANG_BT_ERROR;
+	    }
+	  py_func_cleanup = make_cleanup_py_decref (py_func);
 
-	      if (gdbpy_is_string (py_func))
-		{
-		  char *function_to_free = NULL;
+	  if (gdbpy_is_string (py_func))
+	    {
+	      char *function_to_free;
 
-		  function = function_to_free =
-		    python_string_to_host_string (py_func);
+	      function = function_to_free =
+		python_string_to_host_string (py_func);
 
-		  if (function == NULL)
-		    {
-		      Py_DECREF (py_func);
-		      goto error;
-		    }
-		  make_cleanup (xfree, function_to_free);
-		}
-	      else if (PyLong_Check (py_func))
+	      if (function == NULL)
 		{
-		  CORE_ADDR addr = PyLong_AsUnsignedLongLong (py_func);
-		  struct bound_minimal_symbol msymbol;
-
-		  if (PyErr_Occurred ())
-		    goto error;
-
-		  msymbol = lookup_minimal_symbol_by_pc (addr);
-		  if (msymbol.minsym != NULL)
-		    function = MSYMBOL_PRINT_NAME (msymbol.minsym);
+		  do_cleanups (cleanup_stack);
+		  return EXT_LANG_BT_ERROR;
 		}
-	      else if (py_func != Py_None)
+	      make_cleanup (xfree, function_to_free);
+	    }
+	  else if (PyLong_Check (py_func))
+	    {
+	      CORE_ADDR addr = PyLong_AsUnsignedLongLong (py_func);
+	      struct bound_minimal_symbol msymbol;
+
+	      if (PyErr_Occurred ())
 		{
-		  PyErr_SetString (PyExc_RuntimeError,
-				   _("FrameDecorator.function: expecting a " \
-				     "String, integer or None."));
-		  Py_DECREF (py_func);
-		  goto error;
+		  do_cleanups (cleanup_stack);
+		  return EXT_LANG_BT_ERROR;
 		}
 
+	      msymbol = lookup_minimal_symbol_by_pc (addr);
+	      if (msymbol.minsym != NULL)
+		function = MSYMBOL_PRINT_NAME (msymbol.minsym);
+	    }
+	  else if (py_func != Py_None)
+	    {
+	      PyErr_SetString (PyExc_RuntimeError,
+			       _("FrameDecorator.function: expecting a " \
+				 "String, integer or None."));
+	      do_cleanups (cleanup_stack);
+	      return EXT_LANG_BT_ERROR;
+	    }
 
-	      TRY_CATCH (except, RETURN_MASK_ALL)
-		{
-		  annotate_frame_function_name ();
-		  if (function == NULL)
-		    ui_out_field_skip (out, "func");
-		  else
-		    ui_out_field_string (out, "func", function);
-		}
-	      if (except.reason < 0)
-		{
-		  Py_DECREF (py_func);
-		  gdbpy_convert_exception (except);
-		  goto error;
-		}
-	      Py_DECREF (py_func);
+	  TRY_CATCH (except, RETURN_MASK_ERROR)
+	    {
+	      annotate_frame_function_name ();
+	      if (function == NULL)
+		ui_out_field_skip (out, "func");
+	      else
+		ui_out_field_string (out, "func", function);
 	    }
-	  else
-	    goto error;
+	  if (except.reason < 0)
+	    {
+	      gdbpy_convert_exception (except);
+	      do_cleanups (cleanup_stack);
+	      return EXT_LANG_BT_ERROR;
+	    }
+	  do_cleanups (py_func_cleanup);
 	}
     }
 
@@ -1236,87 +1242,97 @@ py_print_frame (PyObject *filter, int fl
   if (print_args)
     {
       if (py_print_args (filter, out, args_type, frame) == EXT_LANG_BT_ERROR)
-	goto error;
+	{
+	  do_cleanups (cleanup_stack);
+	  return EXT_LANG_BT_ERROR;
+	}
     }
 
   /* File name/source/line number information.  */
   if (print_frame_info)
     {
-      TRY_CATCH (except, RETURN_MASK_ALL)
+      TRY_CATCH (except, RETURN_MASK_ERROR)
 	{
 	  annotate_frame_source_begin ();
 	}
       if (except.reason < 0)
 	{
 	  gdbpy_convert_exception (except);
-	  goto error;
+	  do_cleanups (cleanup_stack);
+	  return EXT_LANG_BT_ERROR;
 	}
 
       if (PyObject_HasAttrString (filter, "filename"))
 	{
-	  PyObject *py_fn = PyObject_CallMethod (filter, "filename",
-						 NULL);
-	  if (py_fn != NULL)
+	  PyObject *py_fn = PyObject_CallMethod (filter, "filename", NULL);
+	  struct cleanup *py_fn_cleanup;
+
+	  if (py_fn == NULL)
 	    {
-	      if (py_fn != Py_None)
-		{
-		  char *filename = python_string_to_host_string (py_fn);
+	      do_cleanups (cleanup_stack);
+	      return EXT_LANG_BT_ERROR;
+	    }
+	  py_fn_cleanup = make_cleanup_py_decref (py_fn);
 
-		  if (filename == NULL)
-		    {
-		      Py_DECREF (py_fn);
-		      goto error;
-		    }
+	  if (py_fn != Py_None)
+	    {
+	      char *filename = python_string_to_host_string (py_fn);
 
-		  make_cleanup (xfree, filename);
-		  TRY_CATCH (except, RETURN_MASK_ALL)
-		    {
-		      ui_out_wrap_hint (out, "   ");
-		      ui_out_text (out, " at ");
-		      annotate_frame_source_file ();
-		      ui_out_field_string (out, "file", filename);
-		      annotate_frame_source_file_end ();
-		    }
-		  if (except.reason < 0)
-		    {
-		      Py_DECREF (py_fn);
-		      gdbpy_convert_exception (except);
-		      goto error;
-		    }
+	      if (filename == NULL)
+		{
+		  do_cleanups (cleanup_stack);
+		  return EXT_LANG_BT_ERROR;
+		}
+
+	      make_cleanup (xfree, filename);
+	      TRY_CATCH (except, RETURN_MASK_ERROR)
+		{
+		  ui_out_wrap_hint (out, "   ");
+		  ui_out_text (out, " at ");
+		  annotate_frame_source_file ();
+		  ui_out_field_string (out, "file", filename);
+		  annotate_frame_source_file_end ();
+		}
+	      if (except.reason < 0)
+		{
+		  gdbpy_convert_exception (except);
+		  do_cleanups (cleanup_stack);
+		  return EXT_LANG_BT_ERROR;
 		}
-	      Py_DECREF (py_fn);
 	    }
-	  else
-	    goto error;
+	  do_cleanups (py_fn_cleanup);
 	}
 
       if (PyObject_HasAttrString (filter, "line"))
 	{
 	  PyObject *py_line = PyObject_CallMethod (filter, "line", NULL);
+	  struct cleanup *py_line_cleanup;
 	  int line;
 
-	  if (py_line != NULL)
+	  if (py_line == NULL)
+	    {
+	      do_cleanups (cleanup_stack);
+	      return EXT_LANG_BT_ERROR;
+	    }
+	  py_line_cleanup = make_cleanup_py_decref (py_line);
+
+	  if (py_line != Py_None)
 	    {
-	      if (py_line != Py_None)
+	      line = PyLong_AsLong (py_line);
+	      TRY_CATCH (except, RETURN_MASK_ERROR)
 		{
-		  line = PyLong_AsLong (py_line);
-		  TRY_CATCH (except, RETURN_MASK_ALL)
-		    {
-		      ui_out_text (out, ":");
-		      annotate_frame_source_line ();
-		      ui_out_field_int (out, "line", line);
-		    }
-		  if (except.reason < 0)
-		    {
-		      Py_DECREF (py_line);
-		      gdbpy_convert_exception (except);
-		      goto error;
-		    }
+		  ui_out_text (out, ":");
+		  annotate_frame_source_line ();
+		  ui_out_field_int (out, "line", line);
+		}
+	      if (except.reason < 0)
+		{
+		  gdbpy_convert_exception (except);
+		  do_cleanups (cleanup_stack);
+		  return EXT_LANG_BT_ERROR;
 		}
-	      Py_DECREF (py_line);
 	    }
-	  else
-	    goto error;
+	  do_cleanups (py_line_cleanup);
 	}
     }
 
@@ -1324,7 +1340,7 @@ py_print_frame (PyObject *filter, int fl
      elided frames, so if MI output detected do not send newline.  */
   if (! ui_out_is_mi_like_p (out))
     {
-      TRY_CATCH (except, RETURN_MASK_ALL)
+      TRY_CATCH (except, RETURN_MASK_ERROR)
 	{
 	  annotate_frame_end ();
 	  ui_out_text (out, "\n");
@@ -1332,7 +1348,8 @@ py_print_frame (PyObject *filter, int fl
       if (except.reason < 0)
 	{
 	  gdbpy_convert_exception (except);
-	  goto error;
+	  do_cleanups (cleanup_stack);
+	  return EXT_LANG_BT_ERROR;
 	}
     }
 
@@ -1340,50 +1357,62 @@ py_print_frame (PyObject *filter, int fl
     {
       if (py_print_locals (filter, out, args_type, indent,
 			   frame) == EXT_LANG_BT_ERROR)
-	goto error;
+	{
+	  do_cleanups (cleanup_stack);
+	  return EXT_LANG_BT_ERROR;
+	}
     }
 
-  /* Finally recursively print elided frames, if any.  */
-  elided  = get_py_iter_from_func (filter, "elided");
-  if (elided == NULL)
-    goto error;
+  {
+    PyObject *elided;
+    struct cleanup *elided_cleanup;
 
-  make_cleanup_py_decref (elided);
-  if (elided != Py_None)
-    {
-      PyObject *item;
+    /* Finally recursively print elided frames, if any.  */
+    elided = get_py_iter_from_func (filter, "elided");
+    if (elided == NULL)
+      {
+	do_cleanups (cleanup_stack);
+	return EXT_LANG_BT_ERROR;
+      }
+    elided_cleanup = make_cleanup_py_decref (elided);
 
-      make_cleanup_ui_out_list_begin_end (out, "children");
+    if (elided != Py_None)
+      {
+	PyObject *item;
 
-      if (! ui_out_is_mi_like_p (out))
-	indent++;
+	make_cleanup_ui_out_list_begin_end (out, "children");
 
-      while ((item = PyIter_Next (elided)))
-	{
-	  enum ext_lang_bt_status success = py_print_frame (item, flags,
-							    args_type, out,
-							    indent,
-							    levels_printed);
-
-	  if (success == EXT_LANG_BT_ERROR)
-	    {
-	      Py_DECREF (item);
-	      goto error;
-	    }
+	if (! ui_out_is_mi_like_p (out))
+	  indent++;
 
-	  Py_DECREF (item);
-	}
-      if (item == NULL && PyErr_Occurred ())
-	goto error;
-    }
+	while ((item = PyIter_Next (elided)))
+	  {
+	    struct cleanup *item_cleanup = make_cleanup_py_decref (item);
 
+	    enum ext_lang_bt_status success = py_print_frame (item, flags,
+							      args_type, out,
+							      indent,
+							      levels_printed);
+
+	    do_cleanups (item_cleanup);
+
+	    if (success == EXT_LANG_BT_ERROR)
+	      {
+		do_cleanups (cleanup_stack);
+		return EXT_LANG_BT_ERROR;
+	      }
+	  }
+	if (item == NULL && PyErr_Occurred ())
+	  {
+	    do_cleanups (cleanup_stack);
+	    return EXT_LANG_BT_ERROR;
+	  }
+      }
+    do_cleanups (elided_cleanup);
+  }
 
   do_cleanups (cleanup_stack);
   return EXT_LANG_BT_COMPLETED;
-
- error:
-  do_cleanups (cleanup_stack);
-  return EXT_LANG_BT_ERROR;
 }
 
 /* Helper function to initiate frame filter invocation at starting
@@ -1533,15 +1562,17 @@ gdbpy_apply_frame_filter (const struct e
 
   while ((item = PyIter_Next (iterable)))
     {
+      struct cleanup *item_cleanup = make_cleanup_py_decref (item);
+
       success = py_print_frame (item, flags, args_type, out, 0,
 				levels_printed);
 
+      do_cleanups (item_cleanup);
+
       /* Do not exit on error printing a single frame.  Print the
 	 error and continue with other frames.  */
       if (success == EXT_LANG_BT_ERROR)
 	gdbpy_print_stack ();
-
-      Py_DECREF (item);
     }
 
   if (item == NULL && PyErr_Occurred ())
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/testsuite/ChangeLog ./gdb/testsuite/ChangeLog
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/testsuite/ChangeLog	2015-02-10 01:58:29.000000000 +0000
+++ ./gdb/testsuite/ChangeLog	2015-02-17 01:58:29.000000000 +0000
@@ -1,3 +1,7 @@
+2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* gdb.python/py-framefilter.exp (pagination quit - *): New tests.
+
 2015-01-26  Wei-cheng Wang  <cole945@gmail.com>
 
 	Backport from mainline:
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/testsuite/gdb.python/py-framefilter.exp ./gdb/testsuite/gdb.python/py-framefilter.exp
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/gdb/testsuite/gdb.python/py-framefilter.exp	2015-02-10 01:58:30.000000000 +0000
+++ ./gdb/testsuite/gdb.python/py-framefilter.exp	2015-02-17 01:58:29.000000000 +0000
@@ -74,6 +74,19 @@ gdb_test "bt full" \
     ".*#0.*cnuf_dne.*h = 9.*f = 42.*g = 19.*bar = $hex \"Inside block x2\".*d = 15.*e = 14.*foo = $hex \"Inside block\".*str = $hex \"The End\".*st2 = $hex \"Is Near\".*b = 12.*c = 5.*" \
     "bt full with filters"
 
+# Test pagination can be aborted even for frame filters.
+gdb_test_no_output "set height 5" "pagination quit - set height limited"
+foreach bttype [list "bt" "bt full"] {
+    set test "pagination quit - $bttype"
+    gdb_test_multiple "$bttype" $test {
+	-re "$pagination_prompt$" {
+	    pass $test
+	}
+    }
+    gdb_test "q" "^q\r\nQuit" "pagination quit - $bttype - q"
+}
+gdb_test_no_output "set height unlimited" "pagination quit - set height unlimited"
+
 gdb_continue_to_breakpoint "Backtrace end breakpoint"
 
 # Test set/show
diff -a -u -r --new-file --show-function-line='^[A-Za-z_]' /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/md5.sum ./md5.sum
--- /sourceware/snapshot-tmp/gdb/snapshot/branch-gdb/update-snapshot/old/gdb-7.8.90.20150210/md5.sum	2015-02-10 02:01:11.000000000 +0000
+++ ./md5.sum	2015-02-17 02:01:15.000000000 +0000
@@ -38,7 +38,7 @@ f74f5720bf485dc971d7b4151b97318b  bfd/pe
 d714ee957aefa81619f03058d91b23cb  bfd/elfcore.h
 c81d65148831d8cdd82361f4e75ad0c2  bfd/elf64-mips.c
 57287cb3abe2dc7f66af4ab28aafebe9  bfd/cpu-m9s12x.c
-10970aec302f48a7ea1fc84cf9ed24df  bfd/version.h
+f1b0ba1622b11d326656574d23748df7  bfd/version.h
 a107ac2f34a58b7629fbff59490f61f1  bfd/cpu-tilegx.c
 ceebc66a221f8f9297b660d643de9009  bfd/coff-mcore.c
 b33e0ba78cdd46c771e365ab8b48bfc1  bfd/cpu-avr.c
@@ -963,7 +963,7 @@ c06b57b1bc52d4071b158cce9c4d6d84  gdb/py
 be45ac04057fb126de4afdf75e48eead  gdb/python/py-block.c
 5357196fb99c71ad607a8e11f59bb0e7  gdb/python/py-events.h
 274c8c8b43207f4ed1f9d3ea98e9b9a4  gdb/python/py-function.c
-b43d7033a6df70bea0827f82c7d27284  gdb/python/py-framefilter.c
+42ce32554a846a73a0381f535d9beb77  gdb/python/py-framefilter.c
 90b06fc16584906b77e71899875ae399  gdb/python/py-gdb-readline.c
 6a6184d9cc708d979459a4a20128ae0e  gdb/python/py-stopevent.h
 5dc469e51f59ed5fd3f494b45dce13b3  gdb/python/py-event.c
@@ -1964,7 +1964,7 @@ c0965bac186c913be9a540aad6307896  gdb/te
 dd62e677888e132103ea63af41be7f06  gdb/testsuite/gdb.python/py-arch.c
 43ee8706c9a7d32e5e968070ed04cf01  gdb/testsuite/gdb.python/python.exp
 4e17740a43fc4bc3abbfd1a2684a6eae  gdb/testsuite/gdb.python/py-framefilter-mi.c
-c80d42858dba9e7de2dfd93d3c86f999  gdb/testsuite/gdb.python/py-framefilter.exp
+beddf8452f0ef9495b85dfdab82b092d  gdb/testsuite/gdb.python/py-framefilter.exp
 644de863d3bc962ba4bc8508d99a0d82  gdb/testsuite/gdb.python/py-inferior.exp
 373d7a430d53f676c0c26eb4cbabc518  gdb/testsuite/gdb.python/py-strfns.c
 5b5e68975905e621812a04d513fa3b31  gdb/testsuite/gdb.python/py-template.exp
@@ -3658,7 +3658,7 @@ b047847a5183b4462b5b135cfd964543  gdb/te
 4127afeb79b2a2bff6c65f128ebd5969  gdb/testsuite/gdb.go/integers.exp
 ea5ff936bcbd68cbc91cb8771230db91  gdb/testsuite/gdb.go/strings.go
 81b7ed6cb92c627d245bd2efc4b953b9  gdb/testsuite/gdb.go/methods.go
-7ce4337f194445108eed533630491615  gdb/testsuite/ChangeLog
+b5b528eb65a599dad9b6eeb894d1ded6  gdb/testsuite/ChangeLog
 b3f11b21e5921c419a43f93720dedf85  gdb/testsuite/gdb.asm/empty.inc
 37858e142701cb0c2b792e4f739ee3eb  gdb/testsuite/gdb.asm/asm-source.exp
 f1621bbbb2acbec5adef86d7d9549975  gdb/testsuite/gdb.asm/bfin.inc
@@ -4296,43 +4296,43 @@ f5615bbb876f5d6b8ff495ea635f223d  gdb/f-
 e88f32d160934e36fa7d803d483a1e2e  gdb/gdb_curses.h
 1bbdb3e7ea9ca53f9a8cf1a548dca9f5  gdb/jv-valprint.c
 8108dd8f906f2654fecc74958cf383db  gdb/doc/psrc.sed
-e245c6780b83cc2b873f3026b363fe59  gdb/doc/gdb.info-3
-b2f975ffacd7414227beb06c0e9d7d6e  gdb/doc/gdb.info-4
+7e26dade8a77c05c16771137963949f1  gdb/doc/gdb.info-3
+9723cd192ed205048f3cb05a26e02451  gdb/doc/gdb.info-4
 ab0fe311032294b952da80585b8b90e7  gdb/doc/fdl.texi
 be5469929c58735017a3a1e083554ac7  gdb/doc/Makefile.in
-10fb2deaca001dcf82813a25287d63bb  gdb/doc/gdb.info-7
+cd40496656f151d5b7732e7341de6332  gdb/doc/gdb.info-7
 65ee16c0a68d8954d5892092576beb66  gdb/doc/observer.texi
-f0a9f0854995b36082c7b2f8c643a388  gdb/doc/gdbserver.1
+11226f17421a7f72c98a059145f7b28f  gdb/doc/gdbserver.1
 669fb3191fafb1ca7da855243682fe4e  gdb/doc/guile.texi
 f81a0e00e0cb9e41b078069fb9bedb07  gdb/doc/stack_frame.txt
 ab34a4a36fd27cddd3c7838273cfb1dd  gdb/doc/stabs.info
-da1d4103034fed5015175d44ac5b5748  gdb/doc/gdb.info-5
-b151b4676c6b00f096ff3865819f37e6  gdb/doc/gdb.info-8
+7e4fda5b2d0aca555c3007a8cfb98da4  gdb/doc/gdb.info-5
+84ae3c42bd7e25f1800a5e22eb760878  gdb/doc/gdb.info-8
 4fb6b0bb12bb47f2079a5e38f7dcdcf7  gdb/doc/agentexpr.texi
-222a885cca599189d09302f0cbd11450  gdb/doc/gdb.info-1
+90eb783acf78d563a40293496319f0c7  gdb/doc/gdb.info-1
 d5d06eaf9b4d44aa442a4a281aa9aea4  gdb/doc/a4rc.sed
-dc54adc831faf65bb52fa619351675b9  gdb/doc/gdb.info-6
+15c463b95c835d8180b879d0ae8b2f61  gdb/doc/gdb.info-6
 85ce27a948be3709b3aa35643f9e6d15  gdb/doc/gdb.texinfo
 553b7fe1bf4b5d8b96fdb8cd83503de1  gdb/doc/stack_frame.svg
 04c82b1da7e894a6555868e4f86225af  gdb/doc/filter-for-doxygen
 938187ce9976cbeb134b49335770152c  gdb/doc/Doxyfile-gdb-api.in
 f828e05ce4faab3d297f32d540f77c99  gdb/doc/annotate.info
-b0b6618a88c78046758d097ff1de8fc8  gdb/doc/gdb.info-2
+bf8b443ffbb62ab86b1f77864071f1b4  gdb/doc/gdb.info-2
 df443225fa3e5719ca7e6925a7e633e0  gdb/doc/refcard.tex
 6076d300a46651562d4ecd0604442414  gdb/doc/stack_frame.png
-983fd99e21b6d880b0f5422049d61d7d  gdb/doc/gdb.info
+22c8ea23ecf6e36df6e5c4a2936e3cd5  gdb/doc/gdb.info
 51f928aef51288aa002575df7e06ff0d  gdb/doc/python.texi
 fa1abec9272120122bf7638320e90d4c  gdb/doc/stabs.texinfo
 c10dfc4e1284c40d2aaa059b6d79ff1c  gdb/doc/ChangeLog
-0d73b50f59e91807cc76a7977906e0cd  gdb/doc/gdb.1
-89800b37b2af2c16407c58038b8dd799  gdb/doc/gcore.1
+40766a92e97ca96883a5028b6491cdbc  gdb/doc/gdb.1
+257683c70197e7d1efcdb176f56d254e  gdb/doc/gcore.1
 d39233c86ed6a6dc9e853ae6a11fe03e  gdb/doc/stack_frame.pdf
 2daa53916456ce35b6806c2883623b89  gdb/doc/Doxyfile-base.in
 7e8f20fd3b739803f4bd3991d35a4a1f  gdb/doc/all-cfg.texi
 bf96494e6e4d346175babd5ef9781882  gdb/doc/gpl.texi
 cd5e3faa9bd1b684a73c7d527cdb4988  gdb/doc/filter-params.pl
 7bfdb0765c5d050d204fbb30aeeba0d8  gdb/doc/stack_frame.eps
-7117c89489ff432ff79003938ca19935  gdb/doc/gdbinit.5
+329bfc2b34b0c7f7f45f37c0bf787d51  gdb/doc/gdbinit.5
 d606e873666ae0bc7bc7c84d6c9c2332  gdb/doc/Doxyfile-gdb-xref.in
 705bf0b3fb65b3f7e3db4cc5d9ae8eba  gdb/doc/annotate.texinfo
 79278fc2f5486809779a9a8f8883d401  gdb/doc/doxy-index.in
@@ -4794,7 +4794,7 @@ e5c081bec329720b4c0d37fb1bf8adae  gdb/p-
 f1679b5d9950d66febb8259748700963  gdb/std-regs.c
 9da9e540b1c6970695a3161272737803  gdb/go-lang.h
 23e51b25e50614cfba06a52e405e2243  gdb/i386-windows-nat.c
-73a7fe51f36f650caed3831e4dfd6368  gdb/po/gdb.pot
+4f704935739edc30703e0e23524e043d  gdb/po/gdb.pot
 1851bff0653201a488dcae18dde7efad  gdb/po/gdbtext
 30821c78a3fca620918958301a2f928c  gdb/ada-lang.c
 5e0c6b053fd9575dde3084e69835d9c3  gdb/dcache.h
@@ -4820,7 +4820,7 @@ b21eb0affa9c0fa159d8dc3a1483410e  gdb/jv
 32bb803ab1e68860f1402dbe7e2cb0f5  gdb/nbsd-nat.h
 83df4734061e07b644f77632819578cf  gdb/mipsread.c
 f5c872d4805a7ac039b4dfc840f4bb8a  gdb/amd64-darwin-tdep.c
-0a6ebf5c8f580c9bb680c825523bdbcd  gdb/ChangeLog
+e5534643a68e4ec463d9891023f8b59f  gdb/ChangeLog
 5a1dbe4837b41ee2b9cc7a35e0d20a61  gdb/go-typeprint.c
 c6de4736a691dfc690f55e7b69880511  gdb/score-tdep.c
 5a44fd4377f0804008a3697e72efbfe3  gdb/xml-support.h
