get_current_selection should return char* not const char*

This commit is contained in:
Kovid Goyal 2022-08-09 09:05:13 +05:30
parent e9823eb40c
commit 5bba1a0851
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
4 changed files with 5 additions and 5 deletions

View File

@ -1560,7 +1560,7 @@ void _glfwPlatformUpdateIMEState(_GLFWwindow *w, const GLFWIMEUpdateEvent *ev) {
{
NSString *text = nil;
if (_glfw.callbacks.get_current_selection) {
const char *s = _glfw.callbacks.get_current_selection();
char *s = _glfw.callbacks.get_current_selection();
if (s) {
text = [NSString stringWithUTF8String:s];
free(s);

2
glfw/glfw3.h vendored
View File

@ -1716,7 +1716,7 @@ typedef void (* GLFWjoystickfun)(int,int);
typedef void (* GLFWuserdatafun)(unsigned long long, void*);
typedef void (* GLFWtickcallback)(void*);
typedef bool (* GLFWdrawtextfun)(GLFWwindow *window, const char *text, uint32_t fg, uint32_t bg, uint8_t *output_buf, size_t width, size_t height, float x_offset, float y_offset, size_t right_margin);
typedef const char* (* GLFWcurrentselectionfun)(void);
typedef char* (* GLFWcurrentselectionfun)(void);
/*! @brief Video mode type.
*

2
kitty/glfw-wrapper.h generated
View File

@ -1454,7 +1454,7 @@ typedef void (* GLFWjoystickfun)(int,int);
typedef void (* GLFWuserdatafun)(unsigned long long, void*);
typedef void (* GLFWtickcallback)(void*);
typedef bool (* GLFWdrawtextfun)(GLFWwindow *window, const char *text, uint32_t fg, uint32_t bg, uint8_t *output_buf, size_t width, size_t height, float x_offset, float y_offset, size_t right_margin);
typedef const char* (* GLFWcurrentselectionfun)(void);
typedef char* (* GLFWcurrentselectionfun)(void);
/*! @brief Video mode type.
*

View File

@ -464,12 +464,12 @@ application_close_requested_callback(int flags) {
}
}
const char*
static char*
get_current_selection(void) {
if (!global_state.boss) return NULL;
PyObject *ret = PyObject_CallMethod(global_state.boss, "get_active_selection", NULL);
if (!ret) { PyErr_Print(); return NULL; }
const char* ans = NULL;
char* ans = NULL;
if (PyUnicode_Check(ret)) ans = strdup(PyUnicode_AsUTF8(ret));
Py_DECREF(ret);
return ans;