We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 1380d36 commit 1b2d5acCopy full SHA for 1b2d5ac
plugins/askrene/layer.c
@@ -547,9 +547,19 @@ static void populate_layer(struct askrene *askrene,
547
const char *layername TAKES,
548
const u8 *data)
549
{
550
- struct layer *layer = new_layer(askrene, layername, true);
+ struct layer *layer;
551
size_t len = tal_bytelen(data);
552
553
+ /* FIXME: They can race us, creating a layer while we're loading! */
554
+ layer = find_layer(askrene, layername);
555
+ if (layer) {
556
+ /* We promised to take this! */
557
+ if (taken(layername))
558
+ tal_free(layername);
559
+ } else {
560
+ layer = new_layer(askrene, layername, true);
561
+ }
562
+
563
plugin_log(askrene->plugin, LOG_DBG,
564
"Loaded level %s (%zu bytes)",
565
layer->name, len);
0 commit comments