Skip to content

Commit 88e529b

Browse files
haszihaszi
andauthored
Generate full index for partial rendering to avoid out of tree xref elements being swallowed by the renderer. (#221)
Co-authored-by: haszi <haszika80@gmail.com>
1 parent ed86b82 commit 88e529b

1 file changed

Lines changed: 23 additions & 26 deletions

File tree

render.php

Lines changed: 23 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -81,30 +81,6 @@
8181
exit(0);
8282
}
8383

84-
function make_reader(Config $config, OutputHandler $outputHandler): Reader {
85-
//Partial Rendering
86-
$idlist = $config->renderIds + $config->skipIds;
87-
if (!empty($idlist)) {
88-
$outputHandler->v("Running partial build", VERBOSE_RENDER_STYLE);
89-
90-
$parents = [];
91-
if ($config->indexCache) {
92-
$parents = $config->indexCache->getParents($config->renderIds);
93-
}
94-
95-
$reader = new Reader_Partial(
96-
$outputHandler,
97-
$config->renderIds,
98-
$config->skipIds,
99-
$parents,
100-
);
101-
} else {
102-
$outputHandler->v("Running full build", VERBOSE_RENDER_STYLE);
103-
$reader = new Reader($outputHandler);
104-
}
105-
return $reader;
106-
}
107-
10884
$render = new Render();
10985

11086
// Set reader LIBXML options
@@ -135,7 +111,8 @@ function make_reader(Config $config, OutputHandler $outputHandler): Reader {
135111

136112
$render->attach($format);
137113

138-
$reader = make_reader($config, $outputHandler);
114+
$outputHandler->v("Running full build", VERBOSE_RENDER_STYLE);
115+
$reader = new Reader($outputHandler);
139116
$reader->open($config->xmlFile, NULL, $readerOpts);
140117
$render->execute($reader);
141118

@@ -160,8 +137,28 @@ function make_reader(Config $config, OutputHandler $outputHandler): Reader {
160137
}
161138
}
162139

140+
//Partial Rendering
141+
$idlist = $config->renderIds + $config->skipIds;
142+
if (!empty($idlist)) {
143+
$outputHandler->v("Running partial build", VERBOSE_RENDER_STYLE);
144+
145+
$parents = [];
146+
if ($config->indexCache) {
147+
$parents = $config->indexCache->getParents($config->renderIds);
148+
}
149+
150+
$reader = new Reader_Partial(
151+
$outputHandler,
152+
$config->renderIds,
153+
$config->skipIds,
154+
$parents,
155+
);
156+
} else {
157+
$outputHandler->v("Running full build", VERBOSE_RENDER_STYLE);
158+
$reader = new Reader($outputHandler);
159+
}
160+
163161
// Render formats
164-
$reader = make_reader($config, $outputHandler);
165162
$reader->open($config->xmlFile, NULL, $readerOpts);
166163
foreach($render as $format) {
167164
$format->notify(Render::VERBOSE, true);

0 commit comments

Comments
 (0)