SHA256
1
0
forked from pool/emacs

Update to GNU Emacs 21.1 ... currently missing GNU mailutils

OBS-URL: https://build.opensuse.org/package/show/editors/emacs?expand=0&rev=247
This commit is contained in:
Dr. Werner Fink 2018-05-29 16:05:09 +00:00 committed by Git OBS Bridge
parent 9f65ca7e0a
commit 83fec1e77d
19 changed files with 246 additions and 799 deletions

View File

@ -1,29 +0,0 @@
--- lisp/obsolete/spell.el
+++ lisp/obsolete/spell.el 2012-06-27 11:54:27.600009491 +0000
@@ -64,7 +64,7 @@ as its \"correct\" spelling; then the qu
(with-no-warnings
(spell-region (point-min) (point-max) "buffer")))
;;;###autoload
-(make-obsolete 'spell-buffer 'ispell-buffer "23.1")
+(define-obsolete-function-alias 'spell-buffer 'ispell-buffer "23.1")
;;;###autoload
(defun spell-word ()
@@ -83,7 +83,7 @@ and `query-replace' the entire buffer to
(with-no-warnings
(spell-region beg end (buffer-substring beg end)))))
;;;###autoload
-(make-obsolete 'spell-word 'ispell-word "23.1")
+(define-obsolete-function-alias 'spell-word 'ispell-word "23.1")
;;;###autoload
(defun spell-region (start end &optional description)
@@ -141,7 +141,7 @@ for example, \"word\"."
(query-replace-regexp (concat "\\b" (regexp-quote word) "\\b")
newword)))))))
;;;###autoload
-(make-obsolete 'spell-region 'ispell-region "23.1")
+(define-obsolete-function-alias 'spell-region 'ispell-region "23.1")
;;;###autoload
(defun spell-string (string)

View File

@ -16,7 +16,7 @@
--- lisp/textmodes/ispell.el
+++ lisp/textmodes/ispell.el 2016-09-19 09:01:56.930605125 +0000
@@ -1709,10 +1709,18 @@ Protects against bogus binding of `enabl
@@ -1524,10 +1524,18 @@ Protects against bogus binding of `enabl
nil ;; in pipe mode. Disable extended-char-mode
(nth 6 (or (assoc ispell-current-dictionary ispell-local-dictionary-alist)
(assoc ispell-current-dictionary ispell-dictionary-alist)))))

View File

@ -4,7 +4,7 @@
--- lisp/startup.el
+++ lisp/startup.el 2016-09-19 09:15:26.871345783 +0000
@@ -2349,6 +2349,9 @@ nil default-directory" name)
@@ -2353,6 +2353,9 @@ nil default-directory" name)
((equal argi "-no-splash")
(setq inhibit-startup-screen t))

View File

@ -14,7 +14,7 @@
#ifdef HAVE_PWD_H
#include <pwd.h>
#endif
@@ -496,6 +499,15 @@ x_load_resources (Display *display, cons
@@ -502,6 +505,15 @@ x_load_resources (Display *display, cons
XrmPutLineResource (&rdb, line);
#endif /* not USE_MOTIF */
@ -30,7 +30,7 @@
user_database = get_user_db (display);
@@ -537,6 +549,10 @@ x_load_resources (Display *display, cons
@@ -543,6 +555,10 @@ x_load_resources (Display *display, cons
XrmMergeDatabases (db, &rdb);
}

View File

@ -1,16 +0,0 @@
---
src/frame.c | 3 +++
1 file changed, 3 insertions(+)
--- src/frame.c
+++ src/frame.c 2014-10-21 13:58:24.419838036 +0000
@@ -20,6 +20,9 @@ along with GNU Emacs. If not, see <http
#include <config.h>
#include <stdio.h>
+#ifdef STDC_HEADERS
+#include <stdlib.h>
+#endif
#include <errno.h>
#include <limits.h>

View File

@ -4,7 +4,7 @@
--- lisp/textmodes/flyspell.el
+++ lisp/textmodes/flyspell.el 2016-09-19 09:22:48.535025631 +0000
@@ -287,6 +287,12 @@ If this variable is nil, all regions are
@@ -310,6 +310,12 @@ If this variable is nil, all regions are
:type 'key-sequence
:group 'flyspell)
@ -17,7 +17,7 @@
;;*---------------------------------------------------------------------*/
;;* Mode specific options */
;;* ------------------------------------------------------------- */
@@ -310,7 +316,6 @@ property of the major mode name.")
@@ -333,7 +339,6 @@ property of the major mode name.")
;;*--- mail mode -------------------------------------------------------*/
(put 'mail-mode 'flyspell-mode-predicate 'mail-mode-flyspell-verify)
(put 'message-mode 'flyspell-mode-predicate 'mail-mode-flyspell-verify)
@ -25,7 +25,7 @@
(defun mail-mode-flyspell-verify ()
"Function used for `flyspell-generic-check-word-predicate' in Mail mode."
(let* ((header-end (save-excursion
@@ -322,11 +327,11 @@ property of the major mode name.")
@@ -345,11 +350,11 @@ property of the major mode name.")
nil t)
(point)))
(signature-begin

View File

@ -4,21 +4,21 @@
2 files changed, 2 insertions(+)
--- configure.ac
+++ configure.ac 2017-02-27 14:03:47.908816992 +0000
@@ -2197,6 +2197,7 @@ fi
+++ configure.ac 2018-05-29 12:18:31.133648098 +0000
@@ -2296,6 +2296,7 @@ fi
use_mmap_for_buffers=no
case "$opsys" in
cygwin|mingw32|freebsd|irix6-5) use_mmap_for_buffers=yes ;;
mingw32) use_mmap_for_buffers=yes ;;
+ gnu-linux) use_mmap_for_buffers=yes ;;
esac
AC_FUNC_MMAP
--- configure
+++ configure 2017-02-27 14:03:47.912816917 +0000
@@ -11576,6 +11576,7 @@ fi
+++ configure 2018-05-29 12:20:07.583908486 +0000
@@ -11423,6 +11423,7 @@ fi
use_mmap_for_buffers=no
case "$opsys" in
cygwin|mingw32|freebsd|irix6-5) use_mmap_for_buffers=yes ;;
mingw32) use_mmap_for_buffers=yes ;;
+ gnu-linux) use_mmap_for_buffers=yes ;;
esac

View File

@ -1,11 +1,10 @@
---
src/emacs-module.c | 1 +
src/xmenu.c | 4 ++--
2 files changed, 3 insertions(+), 2 deletions(-)
1 file changed, 2 insertions(+), 2 deletions(-)
--- src/xmenu.c
+++ src/xmenu.c 2016-09-19 09:01:56.930605125 +0000
@@ -1922,8 +1922,8 @@ Lisp_Object
@@ -1967,8 +1967,8 @@ Lisp_Object
xw_popup_dialog (struct frame *f, Lisp_Object header, Lisp_Object contents)
{
Lisp_Object title;
@ -16,13 +15,3 @@
ptrdiff_t specpdl_count = SPECPDL_INDEX ();
check_window_system (f);
--- src/emacs-module.c
+++ src/emacs-module.c 2016-09-20 09:36:52.881778063 +0000
@@ -787,6 +787,7 @@ usage: (module-call ENVOBJ &rest ARGLIST
default:
eassume (false);
}
+ return Qnil;
}

View File

@ -4,9 +4,9 @@
2 files changed, 4 insertions(+), 4 deletions(-)
--- lisp/ldefs-boot.el
+++ lisp/ldefs-boot.el 2017-09-22 09:54:57.114564921 +0000
@@ -22141,9 +22141,9 @@ With prefix argument ARG, restart the Pr
;;;### (autoloads nil "ps-bdf" "ps-bdf.el" (22768 58519 620336 792000))
+++ lisp/ldefs-boot.el 2018-05-29 12:23:32.824206557 +0000
@@ -26339,9 +26339,9 @@ With prefix argument ARG, restart the Pr
;;;### (autoloads nil "ps-bdf" "ps-bdf.el" (0 0 0 0))
;;; Generated autoloads from ps-bdf.el
-(defvar bdf-directory-list (if (memq system-type '(ms-dos windows-nt)) (list (expand-file-name "fonts/bdf" installation-directory)) '("/usr/local/share/emacs/fonts/bdf")) "\
@ -18,7 +18,7 @@
(custom-autoload 'bdf-directory-list "ps-bdf" t)
--- lisp/ps-bdf.el
+++ lisp/ps-bdf.el 2017-09-22 09:53:18.780402545 +0000
+++ lisp/ps-bdf.el 2018-05-29 12:21:53.126004842 +0000
@@ -42,9 +42,9 @@
(defcustom bdf-directory-list
(if (memq system-type '(ms-dos windows-nt))

View File

@ -4,7 +4,7 @@
--- src/xfns.c
+++ src/xfns.c 2016-09-19 09:10:35.504833294 +0000
@@ -1957,8 +1957,8 @@ static XIMStyle best_xim_style (XIMStyle
@@ -2237,8 +2237,8 @@ static XIMStyle best_xim_style (XIMStyle
static const XIMStyle supported_xim_styles[] =
{

View File

@ -1,24 +1,24 @@
Index: emacs-25.2/configure.ac
===================================================================
---
emacs-25.3/configure.ac | 2 +-
emacs-25.3/src/image.c | 12 ++++++++++++
emacs-26.1/configure.ac | 2 +-
emacs-26.1/src/image.c | 12 ++++++++++++
2 files changed, 13 insertions(+), 1 deletion(-)
--- emacs-25.3/configure.ac
+++ emacs-25.3/configure.ac 2017-09-22 09:59:44.049203440 +0000
@@ -2408,7 +2408,7 @@ if test "${HAVE_X11}" = "yes" || test "$
if test "${with_imagemagick}" != "no"; then
--- emacs-26.1/configure.ac
+++ emacs-26.1/configure.ac 2018-05-29 12:46:11.911662417 +0000
@@ -2525,7 +2525,7 @@ if test "${HAVE_X11}" = "yes" || test "$
## 6.3.5 is the earliest version known to work; see Bug#17339.
## 6.8.2 makes Emacs crash; see Bug#13867.
- IMAGEMAGICK_MODULE="Wand >= 6.3.5 Wand != 6.8.2"
## 7 and later have not been ported to; See Bug#25967.
- IMAGEMAGICK_MODULE="Wand >= 6.3.5 Wand != 6.8.2 Wand < 7"
+ IMAGEMAGICK_MODULE="MagickWand >= 6.3.5 MagickWand != 6.8.2"
EMACS_CHECK_MODULES([IMAGEMAGICK], [$IMAGEMAGICK_MODULE])
AC_SUBST(IMAGEMAGICK_CFLAGS)
AC_SUBST(IMAGEMAGICK_LIBS)
--- emacs-25.3/src/image.c
+++ emacs-25.3/src/image.c 2017-09-22 09:59:44.053203364 +0000
@@ -8402,7 +8402,11 @@ imagemagick_compute_animated_image (Magi
if test $HAVE_IMAGEMAGICK = yes; then
--- emacs-26.1/src/image.c
+++ emacs-26.1/src/image.c 2018-05-29 12:43:23.178732705 +0000
@@ -8432,7 +8432,11 @@ imagemagick_compute_animated_image (Magi
PixelWand **source, **dest;
size_t source_width, source_height;
ssize_t source_left, source_top;
@ -30,7 +30,7 @@ Index: emacs-25.2/configure.ac
DisposeType dispose;
ptrdiff_t lines = 0;
@@ -8467,7 +8471,11 @@ imagemagick_compute_animated_image (Magi
@@ -8497,7 +8501,11 @@ imagemagick_compute_animated_image (Magi
if (dispose == BackgroundDispose || PixelGetAlpha (source[x]))
{
PixelGetMagickColor (source[x], &pixel);
@ -42,7 +42,7 @@ Index: emacs-25.2/configure.ac
}
}
PixelSyncIterator (dest_iterator);
@@ -8512,7 +8520,11 @@ imagemagick_load_image (struct frame *f,
@@ -8542,7 +8550,11 @@ imagemagick_load_image (struct frame *f,
MagickWand *image_wand;
PixelIterator *iterator;
PixelWand **pixels, *bg_wand = NULL;

View File

@ -1,65 +0,0 @@
Based on 9ad0fcc54442a9a01d41be19880250783426db70 Mon Sep 17 00:00:00 2001
From: Lars Ingebrigtsen <larsi@gnus.org>
Date: Fri, 8 Sep 2017 20:23:31 -0700
Subject: Remove unsafe enriched mode translations
* lisp/gnus/mm-view.el (mm-inline-text):
Do not worry about enriched or richtext type.
* lisp/textmodes/enriched.el (enriched-translations):
Remove translations for FUNCTION, display (Bug#28350).
(enriched-handle-display-prop, enriched-decode-display-prop): Remove.
---
lisp/textmodes/enriched.el | 35 -----------------------------------
1 file changed, 35 deletions(-)
--- lisp/textmodes/enriched.el
+++ lisp/textmodes/enriched.el 2017-09-22 10:03:36.648869529 +0000
@@ -117,12 +117,7 @@ expression, which is evaluated to get th
(full "flushboth")
(center "center"))
(PARAMETER (t "param")) ; Argument of preceding annotation
- ;; The following are not part of the standard:
- (FUNCTION (enriched-decode-foreground "x-color")
- (enriched-decode-background "x-bg-color")
- (enriched-decode-display-prop "x-display"))
(read-only (t "x-read-only"))
- (display (nil enriched-handle-display-prop))
(unknown (nil format-annotate-value))
; (font-size (2 "bigger") ; unimplemented
; (-2 "smaller"))
@@ -477,35 +472,5 @@ Return value is \(begin end name positiv
(message "Warning: no color specified for <x-bg-color>")
nil))
-;;; Handling the `display' property.
-
-
-(defun enriched-handle-display-prop (old new)
- "Return a list of annotations for a change in the `display' property.
-OLD is the old value of the property, NEW is the new value. Value
-is a list `(CLOSE OPEN)', where CLOSE is a list of annotations to
-close and OPEN a list of annotations to open. Each of these lists
-has the form `(ANNOTATION PARAM ...)'."
- (let ((annotation "x-display")
- (param (prin1-to-string (or old new))))
- (if (null old)
- (cons nil (list (list annotation param)))
- (cons (list (list annotation param)) nil))))
-
-(defun enriched-decode-display-prop (start end &optional param)
- "Decode a `display' property for text between START and END.
-PARAM is a `<param>' found for the property.
-Value is a list `(START END SYMBOL VALUE)' with START and END denoting
-the range of text to assign text property SYMBOL with value VALUE."
- (let ((prop (when (stringp param)
- (condition-case ()
- (car (read-from-string param))
- (error nil)))))
- (unless prop
- (message "Warning: invalid <x-display> parameter %s" param))
- ;; Disabled in Emacs 25.3 to avoid execution of arbitrary Lisp
- ;; forms in display properties stored within enriched text.
- ;; (list start end 'display prop)))
- (list start end)))
;;; enriched.el ends here

View File

@ -1,303 +0,0 @@
commit d781662873f228b110a128f7a2b6583a4d5e0a3a
Author: Ricardo Wurmus <rekado@elephly.net>
Date: Tue Oct 25 23:00:35 2016 -0700
xwidget: Use WebKit2 API
* configure.ac: Check for webkit2gtk-4.0.
* src/xwidget.c: Adjust to use WebKit2 API.
* lisp/xwidget.el (xwidget-webkit-callback): Adjust matches for
`xwidget-event-type'.
diff --git a/configure.ac b/configure.ac
index 998ff52..46fd434 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2630,8 +2630,8 @@ if test "$with_xwidgets" != "no"; then
test "$USE_GTK_TOOLKIT" = "GTK3" && test "$window_system" != "none" ||
AC_MSG_ERROR([xwidgets requested but gtk3 not used.])
- WEBKIT_REQUIRED=1.4.0
- WEBKIT_MODULES="webkitgtk-3.0 >= $WEBKIT_REQUIRED"
+ WEBKIT_REQUIRED=2.12
+ WEBKIT_MODULES="webkit2gtk-4.0 >= $WEBKIT_REQUIRED"
EMACS_CHECK_MODULES([WEBKIT], [$WEBKIT_MODULES])
HAVE_XWIDGETS=$HAVE_WEBKIT
test $HAVE_XWIDGETS = yes ||
diff --git a/lisp/xwidget.el b/lisp/xwidget.el
index 7a0ca8b..1bae6bb 100644
--- a/lisp/xwidget.el
+++ b/lisp/xwidget.el
@@ -187,7 +187,7 @@ XWIDGET instance, XWIDGET-EVENT-TYPE depends on the originating xwidget."
"error: callback called for xwidget with dead buffer")
(with-current-buffer (xwidget-buffer xwidget)
(let* ((strarg (nth 3 last-input-event)))
- (cond ((eq xwidget-event-type 'document-load-finished)
+ (cond ((eq xwidget-event-type 'load-changed)
(xwidget-log "webkit finished loading: '%s'"
(xwidget-webkit-get-title xwidget))
;;TODO - check the native/internal scroll
@@ -196,8 +196,7 @@ XWIDGET instance, XWIDGET-EVENT-TYPE depends on the originating xwidget."
(rename-buffer (format "*xwidget webkit: %s *"
(xwidget-webkit-get-title xwidget)))
(pop-to-buffer (current-buffer)))
- ((eq xwidget-event-type
- 'navigation-policy-decision-requested)
+ ((eq xwidget-event-type 'decide-policy)
(if (string-match ".*#\\(.*\\)" strarg)
(xwidget-webkit-show-id-or-named-element
xwidget
diff --git a/src/xwidget.c b/src/xwidget.c
index f5f4da0..78349a8 100644
--- a/src/xwidget.c
+++ b/src/xwidget.c
@@ -98,13 +98,7 @@ along with GNU Emacs. If not, see <http
#include <wchar.h>
-#include <webkit/webkitwebview.h>
-#include <webkit/webkitwebplugindatabase.h>
-#include <webkit/webkitwebplugin.h>
-#include <webkit/webkitglobals.h>
-#include <webkit/webkitwebnavigationaction.h>
-#include <webkit/webkitdownload.h>
-#include <webkit/webkitwebpolicydecision.h>
+#include <webkit2/webkit2.h>
static struct xwidget *
allocate_xwidget (void)
@@ -50,34 +47,16 @@ allocate_xwidget_view (void)
static struct xwidget_view *xwidget_view_lookup (struct xwidget *,
struct window *);
-static void webkit_document_load_finished_cb (WebKitWebView *, WebKitWebFrame *,
- gpointer);
-static gboolean webkit_download_cb (WebKitWebView *, WebKitDownload *, gpointer);
+static void webkit_view_load_changed_cb (WebKitWebView *,
+ WebKitLoadEvent,
+ gpointer);
+static gboolean webkit_download_cb (WebKitWebContext *, WebKitDownload *, gpointer);
static gboolean
-webkit_mime_type_policy_typedecision_requested_cb (WebKitWebView *,
- WebKitWebFrame *,
- WebKitNetworkRequest *,
- gchar *,
- WebKitWebPolicyDecision *,
- gpointer);
-
-static gboolean
-webkit_new_window_policy_decision_requested_cb (WebKitWebView *,
- WebKitWebFrame *,
- WebKitNetworkRequest *,
- WebKitWebNavigationAction *,
- WebKitWebPolicyDecision *,
- gpointer);
-
-static gboolean
-webkit_navigation_policy_decision_requested_cb (WebKitWebView *,
- WebKitWebFrame *,
- WebKitNetworkRequest *,
- WebKitWebNavigationAction *,
- WebKitWebPolicyDecision *,
- gpointer);
-
+webkit_decide_policy_cb (WebKitWebView *,
+ WebKitPolicyDecision *,
+ WebKitPolicyDecisionType,
+ gpointer);
DEFUN ("make-xwidget",
@@ -168,29 +147,17 @@ Returns the newly constructed xwidget, or nil if construction fails. */)
if (EQ (xw->type, Qwebkit))
{
g_signal_connect (G_OBJECT (xw->widget_osr),
- "document-load-finished",
- G_CALLBACK (webkit_document_load_finished_cb), xw);
+ "load-changed",
+ G_CALLBACK (webkit_view_load_changed_cb), xw);
- g_signal_connect (G_OBJECT (xw->widget_osr),
- "download-requested",
+ g_signal_connect (G_OBJECT (webkit_web_context_get_default ()),
+ "download-started",
G_CALLBACK (webkit_download_cb), xw);
g_signal_connect (G_OBJECT (xw->widget_osr),
- "mime-type-policy-decision-requested",
- G_CALLBACK
- (webkit_mime_type_policy_typedecision_requested_cb),
- xw);
-
- g_signal_connect (G_OBJECT (xw->widget_osr),
- "new-window-policy-decision-requested",
- G_CALLBACK
- (webkit_new_window_policy_decision_requested_cb),
- xw);
-
- g_signal_connect (G_OBJECT (xw->widget_osr),
- "navigation-policy-decision-requested",
+ "decide-policy",
G_CALLBACK
- (webkit_navigation_policy_decision_requested_cb),
+ (webkit_decide_policy_cb),
xw);
}
@@ -284,81 +251,83 @@ store_xwidget_event_string (struct xwidget *xw, const char *eventname,
kbd_buffer_store_event (&event);
}
-/* TODO deprecated, use load-status. */
void
-webkit_document_load_finished_cb (WebKitWebView *webkitwebview,
- WebKitWebFrame *arg1,
- gpointer data)
+webkit_view_load_changed_cb (WebKitWebView *webkitwebview,
+ WebKitLoadEvent load_event,
+ gpointer data)
{
- struct xwidget *xw = g_object_get_data (G_OBJECT (webkitwebview),
- XG_XWIDGET);
-
- store_xwidget_event_string (xw, "document-load-finished", "");
+ switch (load_event) {
+ case WEBKIT_LOAD_FINISHED:
+ {
+ struct xwidget *xw = g_object_get_data (G_OBJECT (webkitwebview),
+ XG_XWIDGET);
+ store_xwidget_event_string (xw, "load-changed", "");
+ break;
+ }
+ default:
+ break;
+ }
}
gboolean
-webkit_download_cb (WebKitWebView *webkitwebview,
+webkit_download_cb (WebKitWebContext *webkitwebcontext,
WebKitDownload *arg1,
gpointer data)
{
- struct xwidget *xw = g_object_get_data (G_OBJECT (webkitwebview),
+ WebKitWebView *view = webkit_download_get_web_view(arg1);
+ WebKitURIRequest *request = webkit_download_get_request(arg1);
+ struct xwidget *xw = g_object_get_data (G_OBJECT (view),
XG_XWIDGET);
- store_xwidget_event_string (xw, "download-requested",
- webkit_download_get_uri (arg1));
+
+ store_xwidget_event_string (xw, "download-started",
+ webkit_uri_request_get_uri(request));
return FALSE;
}
static gboolean
-webkit_mime_type_policy_typedecision_requested_cb (WebKitWebView *webView,
- WebKitWebFrame *frame,
- WebKitNetworkRequest *request,
- gchar *mimetype,
- WebKitWebPolicyDecision *policy_decision,
- gpointer user_data)
+webkit_decide_policy_cb (WebKitWebView *webView,
+ WebKitPolicyDecision *decision,
+ WebKitPolicyDecisionType type,
+ gpointer user_data)
{
- /* This function makes webkit send a download signal for all unknown
- mime types. TODO: Defer the decision to Lisp, so that it's
- possible to make Emacs handle mime text for instance. */
- if (!webkit_web_view_can_show_mime_type (webView, mimetype))
+ switch (type) {
+ case WEBKIT_POLICY_DECISION_TYPE_RESPONSE:
+ /* This function makes webkit send a download signal for all unknown
+ mime types. TODO: Defer the decision to Lisp, so that it's
+ possible to make Emacs handle mime text for instance. */
{
- webkit_web_policy_decision_download (policy_decision);
- return TRUE;
+ WebKitResponsePolicyDecision *response =
+ WEBKIT_RESPONSE_POLICY_DECISION (decision);
+ if (!webkit_response_policy_decision_is_mime_type_supported (response))
+ {
+ webkit_policy_decision_download (decision);
+ return TRUE;
+ }
+ else
+ return FALSE;
+ break;
}
- else
+ case WEBKIT_POLICY_DECISION_TYPE_NEW_WINDOW_ACTION:
+ case WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION:
+ {
+ WebKitNavigationPolicyDecision *navigation_decision =
+ WEBKIT_NAVIGATION_POLICY_DECISION (decision);
+ WebKitNavigationAction *navigation_action =
+ webkit_navigation_policy_decision_get_navigation_action (navigation_decision);
+ WebKitURIRequest *request =
+ webkit_navigation_action_get_request (navigation_action);
+
+ struct xwidget *xw = g_object_get_data (G_OBJECT (webView), XG_XWIDGET);
+ store_xwidget_event_string (xw, "decide-policy",
+ webkit_uri_request_get_uri (request));
+ return FALSE;
+ break;
+ }
+ default:
return FALSE;
+ }
}
-static gboolean
-webkit_new_window_policy_decision_requested_cb (WebKitWebView *webView,
- WebKitWebFrame *frame,
- WebKitNetworkRequest *request,
- WebKitWebNavigationAction *navigation_action,
- WebKitWebPolicyDecision *policy_decision,
- gpointer user_data)
-{
- struct xwidget *xw = g_object_get_data (G_OBJECT (webView), XG_XWIDGET);
- webkit_web_navigation_action_get_original_uri (navigation_action);
-
- store_xwidget_event_string (xw, "new-window-policy-decision-requested",
- webkit_web_navigation_action_get_original_uri
- (navigation_action));
- return FALSE;
-}
-
-static gboolean
-webkit_navigation_policy_decision_requested_cb (WebKitWebView *webView,
- WebKitWebFrame *frame,
- WebKitNetworkRequest *request,
- WebKitWebNavigationAction *navigation_action,
- WebKitWebPolicyDecision *policy_decision,
- gpointer user_data)
-{
- struct xwidget *xw = g_object_get_data (G_OBJECT (webView), XG_XWIDGET);
- store_xwidget_event_string (xw, "navigation-policy-decision-requested",
- webkit_web_navigation_action_get_original_uri
- (navigation_action));
- return FALSE;
-}
/* For gtk3 offscreen rendered widgets. */
static gboolean
@@ -599,8 +568,13 @@ DEFUN ("xwidget-webkit-execute-script",
{
WEBKIT_FN_INIT ();
CHECK_STRING (script);
- webkit_web_view_execute_script (WEBKIT_WEB_VIEW (xw->widget_osr),
- SSDATA (script));
+ // TODO: provide callback function to do something with the return
+ // value! This allows us to get rid of the title hack.
+ webkit_web_view_run_javascript (WEBKIT_WEB_VIEW (xw->widget_osr),
+ SSDATA (script),
+ NULL, /*cancellable*/
+ NULL, /*callback*/
+ NULL /*user data*/);
return Qnil;
}

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:253ac5e7075e594549b83fd9ec116a9dc37294d415e2f21f8ee109829307c00b
size 42854740

View File

@ -19,8 +19,8 @@
17 files changed, 445 insertions(+), 32 deletions(-)
--- Makefile.in
+++ Makefile.in 2017-02-27 14:06:59.669213860 +0000
@@ -493,8 +493,8 @@ install-arch-dep: src install-arch-indep
+++ Makefile.in 2018-05-29 13:03:41.352569948 +0000
@@ -487,8 +487,8 @@ install-arch-dep: src install-arch-indep
umask 022; ${MKDIR_P} "$(DESTDIR)${bindir}"
$(MAKE) -C lib-src install
ifeq (${ns_self_contained},no)
@ -30,8 +30,8 @@
+ -chmod 755 "$(DESTDIR)${bindir}/$(EMACS)"
ifndef NO_BIN_LINK
rm -f "$(DESTDIR)${bindir}/$(EMACS)"
cd "$(DESTDIR)${bindir}" && $(LN_S_FILEONLY) $(EMACSFULL) $(EMACS)
@@ -683,6 +683,7 @@ install-man:
cd "$(DESTDIR)${bindir}" && $(LN_S_FILEONLY) "$(EMACSFULL)" "$(EMACS)"
@@ -677,6 +677,7 @@ install-man:
umask 022; ${MKDIR_P} "$(DESTDIR)${man1dir}"
thisdir=`/bin/pwd`; \
cd ${mansrcdir}; \
@ -39,18 +39,18 @@
for page in *.1; do \
test "$$page" = ChangeLog.1 && continue; \
dest=`echo "$${page}" | sed -e 's/\.1$$//' -e '$(TRANSFORM)'`.1; \
@@ -771,7 +772,7 @@ uninstall: uninstall-$(NTDIR) uninstall-
@@ -774,7 +775,7 @@ uninstall: uninstall-$(NTDIR) uninstall-
for page in *.1; do \
rm -f "$(DESTDIR)${man1dir}"/`echo "$${page}" | sed -e 's/\.1$$//' -e '$(TRANSFORM)'`.1$$ext; done; \
fi)
- (cd "$(DESTDIR)${bindir}" && rm -f $(EMACSFULL) $(EMACS) || true)
+ (cd "$(DESTDIR)${bindir}" && rm -f $(EMACS) || true)
- rm -f "$(DESTDIR)${bindir}/$(EMACS)" "$(DESTDIR)${bindir}/$(EMACSFULL)"
+ rm -f "$(DESTDIR)${bindir}/$(EMACS)"
(if cd "$(DESTDIR)${icondir}"; then \
rm -f hicolor/*x*/apps/${EMACS_NAME}.png \
hicolor/scalable/apps/${EMACS_NAME}.svg \
rm -f hicolor/*x*/apps/"${EMACS_NAME}.png" \
"hicolor/scalable/apps/${EMACS_NAME}.svg" \
--- configure
+++ configure 2017-02-27 14:07:01.677176097 +0000
@@ -10748,10 +10748,8 @@ fi
+++ configure 2018-05-29 12:55:01.286030771 +0000
@@ -10428,10 +10428,8 @@ fi
LD_SWITCH_X_SITE_RPATH=
if test "${x_libraries}" != NONE; then
if test -n "${x_libraries}"; then
@ -64,8 +64,8 @@
x_default_search_path=""
x_search_path=${x_libraries}
--- configure.ac
+++ configure.ac 2017-02-27 14:06:59.673213785 +0000
@@ -1726,10 +1726,8 @@ fi
+++ configure.ac 2018-05-29 12:55:01.290030699 +0000
@@ -1806,10 +1806,8 @@ fi
LD_SWITCH_X_SITE_RPATH=
if test "${x_libraries}" != NONE; then
if test -n "${x_libraries}"; then
@ -79,7 +79,7 @@
x_default_search_path=""
x_search_path=${x_libraries}
--- doc/man/etags.1
+++ doc/man/etags.1 2017-02-27 14:06:59.673213785 +0000
+++ doc/man/etags.1 2018-05-29 12:55:01.290030699 +0000
@@ -7,7 +7,7 @@
..
@ -163,8 +163,8 @@
.B \-h, \-H, \-\-help
Print usage information. Followed by one or more \-\-language=LANG
--- lib-src/Makefile.in
+++ lib-src/Makefile.in 2017-02-27 14:06:59.673213785 +0000
@@ -150,7 +150,7 @@ MKDIR_P = @MKDIR_P@
+++ lib-src/Makefile.in 2018-05-29 12:55:01.290030699 +0000
@@ -158,7 +158,7 @@ MKDIR_P = @MKDIR_P@
CLIENTW = @CLIENTW@
# Things that a user might actually run, which should be installed in bindir.
@ -173,7 +173,7 @@
ebrowse${EXEEXT}
# Things that Emacs runs internally, or during the build process,
@@ -367,7 +367,7 @@ etags${EXEEXT}: ${etags_deps}
@@ -376,7 +376,7 @@ etags${EXEEXT}: ${etags_deps}
## etags.o files on top of each other.
## FIXME?
## Can't we use a wrapper that calls 'etags --ctags'?
@ -183,7 +183,7 @@
ebrowse${EXEEXT}: ${srcdir}/ebrowse.c ${srcdir}/../lib/min-max.h $(NTLIB) \
--- lib-src/pop.c
+++ lib-src/pop.c 2017-02-27 14:06:59.673213785 +0000
+++ lib-src/pop.c 2018-05-29 12:58:47.821912854 +0000
@@ -26,6 +26,7 @@ along with GNU Emacs. If not, see <http
#ifdef MAIL_USE_POP
@ -191,9 +191,9 @@
+#include <ctype.h>
#ifdef WINDOWSNT
#include "ntlib.h"
#include <winsock.h>
#undef _WIN32_WINNT
--- lisp/cmuscheme.el
+++ lisp/cmuscheme.el 2017-02-27 14:06:59.673213785 +0000
+++ lisp/cmuscheme.el 2018-05-29 12:55:02.466009322 +0000
@@ -241,7 +241,8 @@ is run).
(read-string "Run Scheme: " scheme-program-name)
scheme-program-name)))
@ -205,7 +205,7 @@
(scheme-start-file (car cmdlist)) (cdr cmdlist)))
(inferior-scheme-mode)))
--- lisp/international/mule-cmds.el
+++ lisp/international/mule-cmds.el 2017-02-27 14:06:59.673213785 +0000
+++ lisp/international/mule-cmds.el 2018-05-29 12:55:02.470009250 +0000
@@ -39,6 +39,7 @@
(defvar mule-keymap
@ -215,8 +215,8 @@
(define-key map "r" 'revert-buffer-with-coding-system)
(define-key map "F" 'set-file-name-coding-system)
--- lisp/net/ange-ftp.el
+++ lisp/net/ange-ftp.el 2017-02-27 14:06:59.673213785 +0000
@@ -4985,7 +4985,7 @@ NEWNAME should be the name to give the n
+++ lisp/net/ange-ftp.el 2018-05-29 12:55:02.470009250 +0000
@@ -4971,7 +4971,7 @@ NEWNAME should be the name to give the n
; "If a host matches this regexp then it is assumed to be running VOS.")
;
;(defun ange-ftp-vos-host (host)
@ -225,7 +225,7 @@
; (save-match-data
; (string-match ange-ftp-vos-host-regexp host))))
;
@@ -5100,7 +5100,7 @@ NEWNAME should be the name to give the n
@@ -5086,7 +5086,7 @@ NEWNAME should be the name to give the n
;; Return non-nil if HOST is running VMS.
(defun ange-ftp-vms-host (host)
@ -234,7 +234,7 @@
(string-match-p ange-ftp-vms-host-regexp host)))
;; Because some VMS ftp servers convert filenames to lower case
@@ -5608,7 +5608,7 @@ Other orders of $ and _ seem to all work
@@ -5594,7 +5594,7 @@ Other orders of $ and _ seem to all work
;; Return non-nil if HOST is running MTS.
(defun ange-ftp-mts-host (host)
@ -243,7 +243,7 @@
(string-match-p ange-ftp-mts-host-regexp host)))
;; Parse the current buffer which is assumed to be in mts ftp dir format.
@@ -5806,7 +5806,7 @@ Other orders of $ and _ seem to all work
@@ -5792,7 +5792,7 @@ Other orders of $ and _ seem to all work
;; Return non-nil if HOST is running CMS.
(defun ange-ftp-cms-host (host)
@ -253,7 +253,7 @@
(defun ange-ftp-add-cms-host (host)
--- lisp/site-load.el
+++ lisp/site-load.el 2017-02-27 14:06:59.673213785 +0000
+++ lisp/site-load.el 2018-05-29 12:55:02.470009250 +0000
@@ -0,0 +1,41 @@
+;;;;
+;;; emacs20.xx/lisp/site-load.el
@ -297,7 +297,7 @@
+
+;;; site-load.el ends here
--- lisp/speedbar.el
+++ lisp/speedbar.el 2017-02-27 14:06:59.673213785 +0000
+++ lisp/speedbar.el 2018-05-29 12:55:02.470009250 +0000
@@ -794,6 +794,7 @@ If you want to change this while speedba
;; Navigation.
@ -307,10 +307,10 @@
(define-key map "\M-n" 'speedbar-restricted-next)
(define-key map "\M-p" 'speedbar-restricted-prev)
--- lisp/textmodes/ispell.el
+++ lisp/textmodes/ispell.el 2017-02-27 14:06:59.673213785 +0000
@@ -351,10 +351,12 @@ Must be greater than 1."
:group 'ispell)
+++ lisp/textmodes/ispell.el 2018-05-29 13:01:53.978529106 +0000
@@ -200,10 +200,12 @@ Must be greater than 1."
;; cause an error; and one of the other spelling engines below is
;; almost certainly installed in any case, for enchant to use.
(defcustom ispell-program-name
- (or (executable-find "aspell")
- (executable-find "ispell")
@ -325,7 +325,7 @@
"Program invoked by \\[ispell-word] and \\[ispell-region] commands."
:type 'string
:set (lambda (symbol value)
@@ -1525,6 +1527,56 @@ The variable `ispell-library-directory'
@@ -1414,6 +1416,56 @@ The variable `ispell-library-directory'
(if ispell-menu-map-needed
(progn
(setq ispell-menu-map (make-sparse-keymap "Spell"))
@ -383,7 +383,7 @@
`(menu-item ,(purecopy "Change Dictionary...") ispell-change-dictionary
:help ,(purecopy "Supply explicit dictionary file name")))
--- site-lisp/term/func-keys.el
+++ site-lisp/term/func-keys.el 2017-02-27 14:06:59.673213785 +0000
+++ site-lisp/term/func-keys.el 2018-05-29 12:55:02.474009176 +0000
@@ -0,0 +1,33 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/func-keys.el for site-lisp path
@ -419,7 +419,7 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von func-keys.el
--- site-lisp/term/gnome.el
+++ site-lisp/term/gnome.el 2017-02-27 14:06:59.673213785 +0000
+++ site-lisp/term/gnome.el 2018-05-29 12:55:02.474009176 +0000
@@ -0,0 +1,97 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/gnomw.el for site-lisp path
@ -519,7 +519,7 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von gnomw.el
--- site-lisp/term/kvt.el
+++ site-lisp/term/kvt.el 2017-02-27 14:06:59.677213709 +0000
+++ site-lisp/term/kvt.el 2018-05-29 12:55:02.474009176 +0000
@@ -0,0 +1,97 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/kvt.el for site-lisp path
@ -619,7 +619,7 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von kvt.el
--- site-lisp/term/linux.el
+++ site-lisp/term/linux.el 2017-02-27 14:06:59.677213709 +0000
+++ site-lisp/term/linux.el 2018-05-29 12:55:02.474009176 +0000
@@ -0,0 +1,79 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/linux.el for site-lisp path
@ -701,7 +701,7 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;; Ende von linux.el
--- site-lisp/term/locale.el
+++ site-lisp/term/locale.el 2017-02-27 14:06:59.677213709 +0000
+++ site-lisp/term/locale.el 2018-05-29 12:55:02.474009176 +0000
@@ -0,0 +1,13 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; term/locale.el for site-lisp path

3
emacs-26.1.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1cf4fc240cd77c25309d15e18593789c8dbfba5c2b44d8f77c886542300fd32c
size 44258932

View File

@ -1,3 +1,35 @@
-------------------------------------------------------------------
Tue May 29 13:09:38 UTC 2018 - werner@suse.de
- Update to emacs version 26.1
* Startup Changes in Emacs 26.1
- New option '--fg-daemon'
- New option '--module-assertions'
- Emacs now supports 24-bit colors on capable text terminals
- Emacs now obeys the X resource "scrollBar" at startup
* Various Changes in Emacs 26.1, see NEWS
* Various Editing Changes in Emacs 26.1, see NEWS
* Various Changes in Specialized Modes and Packages in Emacs 26.1, see NEWS
* Some Incompatible Lisp Changes in Emacs 26.1, see NEWS
* Various Lisp Changes in Emacs 26.1, see NEWS
- Removed patch now upstream
* emacs-24.4-decl.dif
* emacs-25.2-bsc1058425.patch
* emacs-25.2-xwidget.patch
* gnulib.git-94e01571.patch
- Remove patch emacs-24.1-bnc628268.patch as spell.el is gone for ever
- Modify/port patches
* emacs-24.1-ps-mule.patch
* emacs-24.3-iconic.patch
* emacs-24.3-x11r7.patch
* emacs-24.4-flyspell.patch
* emacs-24.4-glibc.patch
* emacs-24.4-nonvoid.patch
* emacs-24.4-ps-bdf.patch
* emacs-24.4-xim.patch
* emacs-25.2-ImageMagick7.patch
- Port and rename patch emacs-25.3.dif to emacs-26.1.dif
-------------------------------------------------------------------
Tue Mar 27 16:34:37 UTC 2018 - dimstar@opensuse.org

File diff suppressed because it is too large Load Diff

View File

@ -1,85 +0,0 @@
From 94e01571507835ff59dd8ce2a0b56a4b566965a4 Mon Sep 17 00:00:00 2001
From: =?utf8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
Date: Mon, 24 Apr 2017 01:43:36 -0700
Subject: [PATCH] time_rz: fix heap buffer overflow vulnerability
This issue has been assigned CVE-2017-7476 and was
detected with American Fuzzy Lop 2.41b run on the
coreutils date(1) program with ASAN enabled.
ERROR: AddressSanitizer: heap-buffer-overflow on address 0x...
WRITE of size 8 at 0x60d00000cff8 thread T0
#1 0x443020 in extend_abbrs lib/time_rz.c:88
#2 0x443356 in save_abbr lib/time_rz.c:155
#3 0x44393f in localtime_rz lib/time_rz.c:290
#4 0x41e4fe in parse_datetime2 lib/parse-datetime.y:1798
A minimized reproducer is the following 120 byte TZ value,
which goes beyond the value of ABBR_SIZE_MIN (119) on x86_64.
Extend the aa...b portion to overwrite more of the heap.
date -d $(printf 'TZ="aaa%020daaaaaab%089d"')
localtime_rz and mktime_z were affected since commit 4bc76593.
parse_datetime was affected since commit 4e6e16b3f.
* lib/time_rz.c (save_abbr): Rearrange the calculation determining
whether there is enough buffer space available. The rearrangement
ensures we're only dealing with positive numbers, thus avoiding
the problematic promotion of signed to unsigned causing an invalid
comparison when zone_copy is more than ABBR_SIZE_MIN bytes beyond
the start of the buffer.
* tests/test-parse-datetime.c (main): Add a test case written by
Paul Eggert, which overwrites enough of the heap so that
standard glibc will fail with "free(): invalid pointer"
without the patch applied.
Reported and analyzed at https://bugzilla.redhat.com/1444774
---
lib/time_rz.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
--- lib/time_rz.c
+++ lib/time_rz.c 2017-05-02 11:00:09.386018503 +0000
@@ -27,6 +27,7 @@
#include <time.h>
#include <errno.h>
+#include <limits.h>
#include <stdbool.h>
#include <stddef.h>
#include <stdlib.h>
@@ -34,6 +35,10 @@
#include "time-internal.h"
+#ifndef SIZE_MAX
+# define SIZE_MAX ((size_t) -1)
+#endif
+
#if !HAVE_TZSET
static void tzset (void) { }
#endif
@@ -42,7 +47,7 @@ static void tzset (void) { }
the largest "small" request for the GNU C library malloc. */
enum { DEFAULT_MXFAST = 64 * sizeof (size_t) / 4 };
-/* Minimum size of the ABBRS member of struct abbr. ABBRS is larger
+/* Minimum size of the ABBRS member of struct tm_zone. ABBRS is larger
only in the unlikely case where an abbreviation longer than this is
used. */
enum { ABBR_SIZE_MIN = DEFAULT_MXFAST - offsetof (struct tm_zone, abbrs) };
@@ -149,7 +154,13 @@ save_abbr (timezone_t tz, struct tm *tm)
if (! (*zone_copy || (zone_copy == tz->abbrs && tz->tz_is_set)))
{
size_t zone_size = strlen (zone) + 1;
- if (zone_size < tz->abbrs + ABBR_SIZE_MIN - zone_copy)
+ size_t zone_used = zone_copy - tz->abbrs;
+ if (SIZE_MAX - zone_used < zone_size)
+ {
+ errno = ENOMEM;
+ return false;
+ }
+ if (zone_used + zone_size < ABBR_SIZE_MIN)
extend_abbrs (zone_copy, zone, zone_size);
else
{