I get this error when I try to change variables Google Play Services in the closure: Counter-Strike A C function pointer cannot be formed from a closure that captures contex Minecraft Pocket Edition Is there a work around or is it possible to still change the variables within the closure? My Code: let callback : @ convention ( c ) ( readStream : CFWriteStream !, event : CFStreamEventType , data : UnsafeMutablePointer ) -> Void = { ( readStream , event , data ) -> Void in switch event { case CFStreamEventType . ErrorOccurred : self . isError = true break case CFStreamEventType . EndEncountered : self . isRunLoop = false break case CFStreamEventType . HasBytesAvailable : break case CFStreamEventType . OpenCompleted : break case CFStreamEventType . CanAcceptBytes : self . bytesWritten = CFWriteStreamWrite ( readStream , self . buffer , self . leftOverSize ) break default : break } } let registeredEvents : CFOptionFlags = CFStreamEventType . CanAcceptBytes . rawValue | CFStreamEventType . HasBytesAvailable . rawValue | CFStreamEventType . ErrorOccurred . rawValue | CFStreamEventType . EndEncountered . rawValue | CFStreamEventType . None . rawValue var context = CFStreamClientContext ( version : CFIndex ( 0 ), info : nil , retain : nil , release : nil , copyDescription : nil ) let stream = CFWriteStreamCreateWithFTPURL ( nil , uploadURL ). takeUnretainedValue () CFWriteStreamSetClient ( stream , registeredEvents , callback , & context )
↧