From 44af1a53bf28c922f525bd635c417b22f3b99b39 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Fri, 14 Jul 2017 22:14:58 +0000
Subject: forest (14jul17)

git-svn-id: svn://tug.org/texlive/trunk@44797 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/tex/latex/forest/forest.sty | 58 +++++++++++++++------------
 1 file changed, 33 insertions(+), 25 deletions(-)

(limited to 'Master/texmf-dist/tex/latex/forest/forest.sty')

diff --git a/Master/texmf-dist/tex/latex/forest/forest.sty b/Master/texmf-dist/tex/latex/forest/forest.sty
index 0c6c43ba005..100e8aa90d5 100644
--- a/Master/texmf-dist/tex/latex/forest/forest.sty
+++ b/Master/texmf-dist/tex/latex/forest/forest.sty
@@ -44,7 +44,7 @@
 %% - LICENCE
 %% To use the package, only the files marked with + need to be installed.
 %%
-\ProvidesPackage{forest}[2017/02/02 v2.1.4 Drawing (linguistic) trees]
+\ProvidesPackage{forest}[2017/07/14 v2.1.5 Drawing (linguistic) trees]
 
 \RequirePackage{tikz}[2013/12/13]
 \usetikzlibrary{shapes}
@@ -3346,7 +3346,7 @@
   \pgfkeyssetvalue{#1'/option@name}{#3}%
   \forest@copycommandkey{#1+}{#1}%
   \pgfkeysalso{#1-/.code={%
-      \forest@fornode{register}{%
+      \forest@fornode{}{%
         \forest@node@removekeysfromkeylist{##1}{#3}%
       }}}%
   \pgfkeyssetvalue{#1-/option@name}{#3}%
@@ -4419,7 +4419,7 @@
   #4%
   \let\forest@temp@pgfmathpostparse\pgfmathpostparse
   \let\pgfmathpostparse\forest@aggregate@pgfmathpostparse
-  \forestmath@convert@to\forestmathtype@dimen{\forestmathresult}
+  \forestmath@convert@to\forestmathtype@dimen{\forestmathresult}%
   \pgfmathqparse{\forestmathresult}%
   \let\pgfmathpostparse\forest@temp@pgfmathpostparse
   \forestrlet{aggregate result}\pgfmathresult
@@ -4589,7 +4589,7 @@
   \ifx\forest@nodewalk@config@oninvalid\forest@nodewalk@oninvalid@inherited@text
     \edef\forest@nodewalk@config@oninvalid{\forest@nodewalk@oninvalid}%
   \fi
-  \edef\forest@marshal{%
+  \edef\forest@nw@marshal{%
     \noexpand\pgfqkeys{/forest/nodewalk}{\unexpanded{#1}}%
     \csname forest@nodewalk@config@everystep@\forest@nodewalk@config@everystep@method @after\endcsname
     \csname forest@nodewalk@config@history@\forest@nodewalk@config@history@method @after\endcsname
@@ -4598,8 +4598,10 @@
   \csname forest@nodewalk@config@everystep@\forest@nodewalk@config@everystep@method @before\endcsname{#2}%
   \csname forest@nodewalk@config@history@\forest@nodewalk@config@history@method @before\endcsname
   \edef\forest@nodewalk@oninvalid{\forest@nodewalk@config@oninvalid}%
-  \forest@nodewalk@fakefalse
-  \forest@marshal
+  \forest@saveandrestoreifcs{forest@nodewalk@fake}{%
+    \forest@nodewalk@fakefalse
+    \forest@nw@marshal
+  }%
 }
 \pgfmathdeclarefunction{valid}{1}{%
   \forest@forthis{%
@@ -4718,15 +4720,15 @@
     \expandafter\forest@temp@toks\expandafter{\expandafter\forest@saveandrestoremacro\expandafter\forest@nodewalk@currentstepname\expandafter{\the\forest@temp@toks}}%
     \ifforestdebugnodewalks
       \epretotoks\forest@temp@toks{\noexpand\typeout{Starting step "#1" from id=\noexpand\forest@cn
-          \ifnum\forest@nodewalkstephandler@nargs>0 \space with args ####1\fi
-          \ifnum\forest@nodewalkstephandler@nargs>1 ,####2\fi
-          \ifnum\forest@nodewalkstephandler@nargs>2 ,####3\fi
-          \ifnum\forest@nodewalkstephandler@nargs>3 ,####4\fi
-          \ifnum\forest@nodewalkstephandler@nargs>4 ,####5\fi
-          \ifnum\forest@nodewalkstephandler@nargs>5 ,####6\fi
-          \ifnum\forest@nodewalkstephandler@nargs>6 ,####7\fi
-          \ifnum\forest@nodewalkstephandler@nargs>7 ,####8\fi
-          \ifnum\forest@nodewalkstephandler@nargs>8 ,####9\fi
+          \ifnum\forest@nodewalkstephandler@nargs>0 \space with args \noexpand\unexpanded{####1}\fi
+          \ifnum\forest@nodewalkstephandler@nargs>1 ,\noexpand\unexpanded{####2}\fi
+          \ifnum\forest@nodewalkstephandler@nargs>2 ,\noexpand\unexpanded{####3}\fi
+          \ifnum\forest@nodewalkstephandler@nargs>3 ,\noexpand\unexpanded{####4}\fi
+          \ifnum\forest@nodewalkstephandler@nargs>4 ,\noexpand\unexpanded{####5}\fi
+          \ifnum\forest@nodewalkstephandler@nargs>5 ,\noexpand\unexpanded{####6}\fi
+          \ifnum\forest@nodewalkstephandler@nargs>6 ,\noexpand\unexpanded{####7}\fi
+          \ifnum\forest@nodewalkstephandler@nargs>7 ,\noexpand\unexpanded{####8}\fi
+          \ifnum\forest@nodewalkstephandler@nargs>8 ,\noexpand\unexpanded{####9}\fi
         }}%
     \fi
     \def\forest@temp{/forest/nodewalk/#1/.code}%
@@ -7606,16 +7608,21 @@
   }%
   \forest@node@Ifnamedefined{forest@baseline@node}{%
     \edef\forest@baseline@id{\forest@node@Nametoid{forest@baseline@node}}%
-    \ifcsdef{forest@drawn@\forest@baseline@id}{%
-      \edef\forest@marshal{%
-        \noexpand\pgfsetbaselinepointlater{%
-          \noexpand\pgfpointanchor
-            {\forestOve{\forest@baseline@id}{name}}%
-            {\forestOve{\forest@baseline@id}{anchor}}%
-        }%
-      }\forest@marshal
-    }{}%
-  }{}%
+    \ifnum\forest@baseline@id=0
+    \else
+      \ifcsdef{forest@drawn@\forest@baseline@id}{%
+        \edef\forest@marshal{%
+          \noexpand\pgfsetbaselinepointlater{%
+            \noexpand\pgfpointanchor
+              {\forestOve{\forest@baseline@id}{name}}%
+              {\forestOve{\forest@baseline@id}{anchor}}%
+          }%
+        }\forest@marshal
+      }{%
+        \PackageWarning{forest}{Baseline node (id=\forest@cn) was not drawn (most likely it's a phantom node)}%
+      }%
+    \fi
+  }%
   \forest@clear@drawn
 }
 \def\forest@draw@node{%
@@ -9243,6 +9250,7 @@
   }%
   \forest@global@marshal
 }
+\forest@node@init
 \ifdefempty{\forest@compat}{}{%
   \RequirePackage{forest-compat}
 }
-- 
cgit v1.2.3

