@@ -267,6 +267,43 @@ OSOReaderQuery::codemarker (const char *name)
267267
268268
269269
270+ OSLQuery::Parameter::Parameter (const Parameter& src)
271+ : name(src.name), type(src.type), isoutput(src.isoutput),
272+ validdefault(src.validdefault), varlenarray(src.varlenarray),
273+ isstruct(src.isstruct), isclosure(src.isclosure),
274+ idefault(src.idefault), fdefault(src.fdefault),
275+ sdefault(src.sdefault), spacename(src.spacename),
276+ fields(src.fields), structname(src.structname),
277+ metadata(src.metadata)
278+ {
279+ if (type.basetype == TypeDesc::INT)
280+ data = idefault.data ();
281+ else if (type.basetype == TypeDesc::FLOAT)
282+ data = fdefault.data ();
283+ else if (type.basetype == TypeDesc::STRING)
284+ data = sdefault.data ();
285+ }
286+
287+
288+
289+ OSLQuery::Parameter::Parameter (Parameter&& src)
290+ : name(src.name), type(src.type), isoutput(src.isoutput),
291+ validdefault(src.validdefault), varlenarray(src.varlenarray),
292+ isstruct(src.isstruct), isclosure(src.isclosure),
293+ idefault(src.idefault), fdefault(src.fdefault),
294+ sdefault(src.sdefault), spacename(src.spacename),
295+ fields(src.fields), structname(src.structname),
296+ metadata(src.metadata)
297+ {
298+ if (type.basetype == TypeDesc::INT)
299+ data = idefault.data ();
300+ else if (type.basetype == TypeDesc::FLOAT)
301+ data = fdefault.data ();
302+ else if (type.basetype == TypeDesc::STRING)
303+ data = sdefault.data ();
304+ }
305+
306+
270307
271308OSLQuery::OSLQuery ()
272309{
0 commit comments