Skip to content

Commit 309fcd9

Browse files
committed
fixes custom blocks being corrupted
1 parent 3e02eaa commit 309fcd9

File tree

2 files changed

+48
-4
lines changed

2 files changed

+48
-4
lines changed

src/lib/project-fetcher-hoc.jsx

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,19 @@ function protobufToJson(buffer) {
131131
shadow: target.blocks[block].shadow,
132132
topLevel: target.blocks[block].topLevel,
133133
x: target.blocks[block].x,
134-
y: target.blocks[block].y
134+
y: target.blocks[block].y,
135+
mutation: {
136+
tagName: target.blocks[block].mutation.tagName,
137+
proccode: target.blocks[block].mutation.proccode,
138+
argumentids: target.blocks[block].mutation.argumentids,
139+
argumentnames: target.blocks[block].mutation.argumentnames,
140+
argumentdefaults: target.blocks[block].mutation.argumentdefaults,
141+
warp: target.blocks[block].mutation.warp,
142+
returns: target.blocks[block].mutation._returns,
143+
edited: target.blocks[block].mutation.edited,
144+
optype: target.blocks[block].mutation.optype,
145+
color: target.blocks[block].mutation.color
146+
}
135147
}
136148

137149
for (const input in target.blocks[block].inputs) {

src/lib/project.protobuf.js

Lines changed: 35 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
2-
31
'use strict'; // code generated by pbf v3.2.1
42

53
// monitor ========================================
@@ -152,12 +150,44 @@ _listValue.write = function (obj, pbf) {
152150
if (obj.value) for (var i = 0; i < obj.value.length; i++) pbf.writeStringField(2, obj.value[i]);
153151
};
154152

153+
// _mutation ========================================
154+
155+
var _mutation = self._mutation = {};
156+
157+
_mutation.read = function (pbf, end) {
158+
return pbf.readFields(_mutation._readField, {tagName: "", proccode: "", argumentids: "", argumentnames: "", argumentdefaults: "", warp: false, _returns: "", edited: false, optype: "", color: ""}, end);
159+
};
160+
_mutation._readField = function (tag, obj, pbf) {
161+
if (tag === 1) obj.tagName = pbf.readString();
162+
else if (tag === 3) obj.proccode = pbf.readString();
163+
else if (tag === 4) obj.argumentids = pbf.readString();
164+
else if (tag === 5) obj.argumentnames = pbf.readString();
165+
else if (tag === 6) obj.argumentdefaults = pbf.readString();
166+
else if (tag === 7) obj.warp = pbf.readBoolean();
167+
else if (tag === 8) obj._returns = pbf.readString();
168+
else if (tag === 9) obj.edited = pbf.readBoolean();
169+
else if (tag === 10) obj.optype = pbf.readString();
170+
else if (tag === 11) obj.color = pbf.readString();
171+
};
172+
_mutation.write = function (obj, pbf) {
173+
if (obj.tagName) pbf.writeStringField(1, obj.tagName);
174+
if (obj.proccode) pbf.writeStringField(3, obj.proccode);
175+
if (obj.argumentids) pbf.writeStringField(4, obj.argumentids);
176+
if (obj.argumentnames) pbf.writeStringField(5, obj.argumentnames);
177+
if (obj.argumentdefaults) pbf.writeStringField(6, obj.argumentdefaults);
178+
if (obj.warp) pbf.writeBooleanField(7, obj.warp);
179+
if (obj._returns) pbf.writeStringField(8, obj._returns);
180+
if (obj.edited) pbf.writeBooleanField(9, obj.edited);
181+
if (obj.optype) pbf.writeStringField(10, obj.optype);
182+
if (obj.color) pbf.writeStringField(11, obj.color);
183+
};
184+
155185
// block ========================================
156186

157187
var block = self.block = {};
158188

159189
block.read = function (pbf, end) {
160-
return pbf.readFields(block._readField, {opcode: "", next: "", parent: "", inputs: {}, fields: {}, shadow: false, topLevel: false, x: 0, y: 0}, end);
190+
return pbf.readFields(block._readField, {opcode: "", next: "", parent: "", inputs: {}, fields: {}, shadow: false, topLevel: false, x: 0, y: 0, mutation: null}, end);
161191
};
162192
block._readField = function (tag, obj, pbf) {
163193
if (tag === 1) obj.opcode = pbf.readString();
@@ -169,6 +199,7 @@ block._readField = function (tag, obj, pbf) {
169199
else if (tag === 7) obj.topLevel = pbf.readBoolean();
170200
else if (tag === 8) obj.x = pbf.readVarint(true);
171201
else if (tag === 9) obj.y = pbf.readVarint(true);
202+
else if (tag === 10) obj.mutation = _mutation.read(pbf, pbf.readVarint() + pbf.pos);
172203
};
173204
block.write = function (obj, pbf) {
174205
if (obj.opcode) pbf.writeStringField(1, obj.opcode);
@@ -180,6 +211,7 @@ block.write = function (obj, pbf) {
180211
if (obj.topLevel) pbf.writeBooleanField(7, obj.topLevel);
181212
if (obj.x) pbf.writeVarintField(8, obj.x);
182213
if (obj.y) pbf.writeVarintField(9, obj.y);
214+
if (obj.mutation) pbf.writeMessage(10, _mutation.write, obj.mutation);
183215
};
184216

185217
// block._FieldEntry4 ========================================

0 commit comments

Comments
 (0)