]> sigrok.org Git - libserialport.git/blobdiff - serialport.c
autotools: Don't set/override "user variables".
[libserialport.git] / serialport.c
index 1ace0ae32f9a5e97038573770ee8be30dc10f094..074534edb8a898c280109a25b3da9ae537e1820e 100644 (file)
@@ -126,7 +126,7 @@ SP_API char *sp_get_port_name(const struct sp_port *port)
        RETURN_STRING(port->name);
 }
 
-SP_API char *sp_get_port_description(struct sp_port *port)
+SP_API char *sp_get_port_description(const struct sp_port *port)
 {
        TRACE("%p", port);
 
@@ -136,7 +136,7 @@ SP_API char *sp_get_port_description(struct sp_port *port)
        RETURN_STRING(port->description);
 }
 
-SP_API enum sp_transport sp_get_port_transport(struct sp_port *port)
+SP_API enum sp_transport sp_get_port_transport(const struct sp_port *port)
 {
        TRACE("%p", port);
 
@@ -322,8 +322,10 @@ fail:
 
 SP_API enum sp_return sp_list_ports(struct sp_port ***list_ptr)
 {
+#ifndef NO_ENUMERATION
        struct sp_port **list;
        int ret;
+#endif
 
        TRACE("%p", list_ptr);
 
@@ -1165,13 +1167,12 @@ static enum sp_return add_handle(struct sp_event_set *event_set,
                        sizeof(event_handle) * (event_set->count + 1))))
                RETURN_ERROR(SP_ERR_MEM, "Handle array realloc() failed");
 
+       event_set->handles = new_handles;
+
        if (!(new_masks = realloc(event_set->masks,
-                       sizeof(enum sp_event) * (event_set->count + 1)))) {
-               free(new_handles);
+                       sizeof(enum sp_event) * (event_set->count + 1))))
                RETURN_ERROR(SP_ERR_MEM, "Mask array realloc() failed");
-       }
 
-       event_set->handles = new_handles;
        event_set->masks = new_masks;
 
        ((event_handle *) event_set->handles)[event_set->count] = handle;