RoboRIO code and GRIP crashing

Hello from 1086!

We have been getting a strange error, and google has revealed very little.
We have been running GRIP if that changes anything. We have not coded any multithreading.

Here it is:
frcuserprogram: pthread_mutex_lock.c:360: __pthread_mutex_lock_full: assertion `robust || (oldval & 0x40000000) == 0’ failed.

Any idea what may be causing this or how to fix it?

The following classes in wpilib all use a mutex to protect the data structure.

USBCamera
Notifier
DriverStation
CameraServer
CANJaguar
Vision/AxisCamera

I suspect some where in your code you are overwriting the memory into one of the existing structures that’s using a mutex. The most likely candidate is DriverStation, as it is responsible for holding the values for everything from the DS.

(1) Inspect your code for likely candidates that write to an object or pointer
(2) If the number of candidates is small, turn each off one by one, and test your code to see if you get the error.
(3) If the number of candidates is large, turn off half of them, and test our code to see if you get the error. If you see the error, turn off the other, half. If you don’t see the error, turn on half of the remainder, and repeat until you find the line of code that’s causing the error.

Have you tried using the debugger to get more info? Once it captures the crash, you can get a stack trace which will contain the line of your code that led to it. To run the debugger, right click your project in Eclipse, select “Debug As” and then “WPILib C++ Deploy”

What is grip exactly because we are having some issues with our roborio crashing repeatedly and we think that it’s because of bad code so when we open the driver station while it’s connected it says there is no robot code even though we had just built the code in eclipse using java and it said build successful

GRIP is the Graphically Represented Image Processing Engine. It’s a program new this year from WPI to interactively create a image processing pipeline for manipulating images.

Your issue sounds like a problem in your Robot initialization code. I would look at the code that was added since it worked last. If you are still having issues, you could open a new thread and post your code. Sometimes a useful message is posted to the roborio console during code startup.