State:New|TargetRelease:No Target|icon_bug|icon_nuke|database:public|Resolution:Fixed|BugID:581553|
Problem summary:
Incorrect results can be returned when using node.knob.frame() or the frame expression on certain nodes upstream of a TimeOffset
This issue has been observed with NoOp, Input, Output, Group, and Dot nodes, but may affect other nodes as well.
Customer reported version:
Nuke 14.1v4
Customer reported platform:
CentOS 7
Steps to reproduce:
1) Launch Nuke and create a NoOp node in the Node Graph.
2) Create a Text node, and enter frame: [frame] into the message knob.


n = nuke.toNode("NoOp1")k = n.knob("hide_input")print(k.frame())5) Observe how the print() statement matches the Text node's expression in the Viewer.knob.frame() no longer matches the Text node:
node.knob.frame() and the frame expression should consistently produce accurate results and account for any TimeOffset nodes being Viewed. node.knob.frame() does not always evaluate correctly when a TimeOffset node is being Viewed downstream. This same issue occurs when utilizing the frame expression on a knob belonging to one of the affected Node Classes.frame expression in the NoOp's "test" knob will not return the correct values once the current frame is adjusted: NoOp {name NoOp1addUserKnob {20 User}addUserKnob {3 test l "" +STARTLINE}test {{frame}}}TimeOffset {time_offset 10time ""name TimeOffset1} knob.frame() and frame expressions to return the expected results, but incorrect values will be returned again once the current frame is updated.
We're sorry to hear that
Please tell us why